记得上下班打卡 | git大法好,push需谨慎
Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
liquidnet-bus-v1
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
董敬伟
liquidnet-bus-v1
Commits
fe4c3436
Commit
fe4c3436
authored
Aug 05, 2021
by
张国柄
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
MQ消费调整;
parent
7e68aba0
Changes
15
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
132 additions
and
38 deletions
+132
-38
AbstractSmsRedisReceiver.java
...vice/consumer/adam/receiver/AbstractSmsRedisReceiver.java
+2
-2
AbstractSqlRedisReceiver.java
...vice/consumer/adam/receiver/AbstractSqlRedisReceiver.java
+4
-4
AbstractSmsRedisReceiver.java
...ice/consumer/kylin/receiver/AbstractSmsRedisReceiver.java
+24
-10
AbstractSqlOptOrderCloseRedisReceiver.java
...kylin/receiver/AbstractSqlOptOrderCloseRedisReceiver.java
+26
-11
AbstractSqlRedisReceiver.java
...ice/consumer/kylin/receiver/AbstractSqlRedisReceiver.java
+26
-11
ConsumerKylinSmsNoticeRdsReceiver.java
...mer/kylin/receiver/ConsumerKylinSmsNoticeRdsReceiver.java
+5
-0
ConsumerKylinSqlOptOrderCloseRedisReceiver.java
.../receiver/ConsumerKylinSqlOptOrderCloseRedisReceiver.java
+5
-0
ConsumerKylinSqlOrderAgainRdsReceiver.java
...kylin/receiver/ConsumerKylinSqlOrderAgainRdsReceiver.java
+5
-0
ConsumerKylinSqlOrderCreateRdsReceiver.java
...ylin/receiver/ConsumerKylinSqlOrderCreateRdsReceiver.java
+5
-0
ConsumerKylinSqlOrderOvertimeRefundRdsReceiver.java
...eiver/ConsumerKylinSqlOrderOvertimeRefundRdsReceiver.java
+5
-0
ConsumerKylinSqlOrderPayRdsReceiver.java
...r/kylin/receiver/ConsumerKylinSqlOrderPayRdsReceiver.java
+5
-0
ConsumerKylinSqlOrderRefundRdsReceiver.java
...ylin/receiver/ConsumerKylinSqlOrderRefundRdsReceiver.java
+5
-0
ConsumerKylinSqlOrderWithdrawRdsReceiver.java
...in/receiver/ConsumerKylinSqlOrderWithdrawRdsReceiver.java
+5
-0
ConsumerKylinSqlPerformanceLackRdsReceiver.java
.../receiver/ConsumerKylinSqlPerformanceLackRdsReceiver.java
+5
-0
ConsumerKylinSqlStationRdsReceiver.java
...er/kylin/receiver/ConsumerKylinSqlStationRdsReceiver.java
+5
-0
No files found.
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-adam/src/main/java/com/liquidnet/service/consumer/adam/receiver/AbstractSmsRedisReceiver.java
View file @
fe4c3436
...
@@ -24,7 +24,7 @@ public abstract class AbstractSmsRedisReceiver implements StreamListener<String,
...
@@ -24,7 +24,7 @@ public abstract class AbstractSmsRedisReceiver implements StreamListener<String,
@Override
@Override
public
void
onMessage
(
MapRecord
<
String
,
String
,
String
>
message
)
{
public
void
onMessage
(
MapRecord
<
String
,
String
,
String
>
message
)
{
log
.
info
(
"CONSUMER SMS[streamKey:{},messageId:{},stream:{},body:{}]"
,
log
.
debug
(
"CONSUMER SMS[streamKey:{},messageId:{},stream:{},body:{}]"
,
this
.
getRedisStreamKey
(),
message
.
getId
(),
message
.
getStream
(),
message
.
getValue
());
this
.
getRedisStreamKey
(),
message
.
getId
(),
message
.
getStream
(),
message
.
getValue
());
boolean
result
=
this
.
consumerSmsSendHandler
(
message
.
getValue
().
get
(
"message"
));
boolean
result
=
this
.
consumerSmsSendHandler
(
message
.
getValue
().
get
(
"message"
));
...
@@ -34,7 +34,7 @@ public abstract class AbstractSmsRedisReceiver implements StreamListener<String,
...
@@ -34,7 +34,7 @@ public abstract class AbstractSmsRedisReceiver implements StreamListener<String,
stringRedisTemplate
.
opsForStream
().
acknowledge
(
getRedisStreamGroup
(),
message
);
stringRedisTemplate
.
opsForStream
().
acknowledge
(
getRedisStreamGroup
(),
message
);
stringRedisTemplate
.
opsForStream
().
delete
(
this
.
getRedisStreamKey
(),
message
.
getId
());
stringRedisTemplate
.
opsForStream
().
delete
(
this
.
getRedisStreamKey
(),
message
.
getId
());
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
error
(
"CONSUMER SMS RESULT:{} ==> DEL_REDIS_QUEUE_MSG_EXCEPTION[MESSAGE_ID:{},MSG:{}]"
,
result
,
message
.
getId
(),
JsonUtils
.
toJson
(
message
),
e
);
log
.
error
(
"
#
CONSUMER SMS RESULT:{} ==> DEL_REDIS_QUEUE_MSG_EXCEPTION[MESSAGE_ID:{},MSG:{}]"
,
result
,
message
.
getId
(),
JsonUtils
.
toJson
(
message
),
e
);
}
finally
{
}
finally
{
try
{
try
{
stringRedisTemplate
.
opsForStream
().
acknowledge
(
getRedisStreamGroup
(),
message
);
stringRedisTemplate
.
opsForStream
().
acknowledge
(
getRedisStreamGroup
(),
message
);
...
...
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-adam/src/main/java/com/liquidnet/service/consumer/adam/receiver/AbstractSqlRedisReceiver.java
View file @
fe4c3436
...
@@ -23,17 +23,17 @@ public abstract class AbstractSqlRedisReceiver implements StreamListener<String,
...
@@ -23,17 +23,17 @@ public abstract class AbstractSqlRedisReceiver implements StreamListener<String,
@Override
@Override
public
void
onMessage
(
MapRecord
<
String
,
String
,
String
>
message
)
{
public
void
onMessage
(
MapRecord
<
String
,
String
,
String
>
message
)
{
log
.
info
(
"CONSUMER SQL[streamKey:{},messageId:{},stream:{},body:{}]"
,
log
.
debug
(
"CONSUMER SQL[streamKey:{},messageId:{},stream:{},body:{}]"
,
this
.
getRedisStreamKey
(),
message
.
getId
(),
message
.
getStream
(),
message
.
getValue
());
this
.
getRedisStreamKey
(),
message
.
getId
(),
message
.
getStream
(),
message
.
getValue
());
boolean
result
=
this
.
consumerSqlDaoHandler
(
message
.
getValue
().
get
(
"message"
));
boolean
result
=
this
.
consumerSqlDaoHandler
(
message
.
getValue
().
get
(
"message"
));
log
.
info
(
"CONSUMER S
MS
RESULT:{} ==> MESSAGE_ID:{}"
,
result
,
message
.
getId
());
log
.
info
(
"CONSUMER S
QL
RESULT:{} ==> MESSAGE_ID:{}"
,
result
,
message
.
getId
());
try
{
try
{
stringRedisTemplate
.
opsForStream
().
acknowledge
(
getRedisStreamGroup
(),
message
);
stringRedisTemplate
.
opsForStream
().
acknowledge
(
getRedisStreamGroup
(),
message
);
stringRedisTemplate
.
opsForStream
().
delete
(
this
.
getRedisStreamKey
(),
message
.
getId
());
stringRedisTemplate
.
opsForStream
().
delete
(
this
.
getRedisStreamKey
(),
message
.
getId
());
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
error
(
"CONSUMER SQL RESULT:{} ==> DEL_REDIS_QUEUE_MSG_EXCEPTION[MESSAGE_ID:{},MSG:{}]"
,
result
,
message
.
getId
(),
JsonUtils
.
toJson
(
message
),
e
);
log
.
error
(
"
#
CONSUMER SQL RESULT:{} ==> DEL_REDIS_QUEUE_MSG_EXCEPTION[MESSAGE_ID:{},MSG:{}]"
,
result
,
message
.
getId
(),
JsonUtils
.
toJson
(
message
),
e
);
}
finally
{
}
finally
{
try
{
try
{
stringRedisTemplate
.
opsForStream
().
acknowledge
(
getRedisStreamGroup
(),
message
);
stringRedisTemplate
.
opsForStream
().
acknowledge
(
getRedisStreamGroup
(),
message
);
...
@@ -48,7 +48,7 @@ public abstract class AbstractSqlRedisReceiver implements StreamListener<String,
...
@@ -48,7 +48,7 @@ public abstract class AbstractSqlRedisReceiver implements StreamListener<String,
SqlMapping
.
SqlMessage
sqlMessage
=
JsonUtils
.
fromJson
(
msg
,
SqlMapping
.
SqlMessage
.
class
);
SqlMapping
.
SqlMessage
sqlMessage
=
JsonUtils
.
fromJson
(
msg
,
SqlMapping
.
SqlMessage
.
class
);
aBoolean
=
baseDao
.
batchSqls
(
sqlMessage
.
getSqls
(),
sqlMessage
.
getArgs
());
aBoolean
=
baseDao
.
batchSqls
(
sqlMessage
.
getSqls
(),
sqlMessage
.
getArgs
());
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
error
(
"CONSUMER S
MS
FAIL ==> {}"
,
e
.
getMessage
(),
e
);
log
.
error
(
"CONSUMER S
QL
FAIL ==> {}"
,
e
.
getMessage
(),
e
);
}
finally
{
}
finally
{
if
(!
aBoolean
)
{
if
(!
aBoolean
)
{
HashMap
<
String
,
String
>
map
=
CollectionUtil
.
mapStringString
();
HashMap
<
String
,
String
>
map
=
CollectionUtil
.
mapStringString
();
...
...
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/AbstractSmsRedisReceiver.java
View file @
fe4c3436
package
com
.
liquidnet
.
service
.
consumer
.
kylin
.
receiver
;
package
com
.
liquidnet
.
service
.
consumer
.
kylin
.
receiver
;
import
com.liquidnet.common.sms.processor.SmsProcessor
;
import
com.liquidnet.common.sms.processor.SmsProcessor
;
import
com.liquidnet.commons.lang.util.CollectionUtil
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.service.base.SmsMessage
;
import
com.liquidnet.service.base.SmsMessage
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.connection.stream.MapRecord
;
import
org.springframework.data.redis.connection.stream.MapRecord
;
import
org.springframework.data.redis.connection.stream.StreamRecords
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.data.redis.stream.StreamListener
;
import
org.springframework.data.redis.stream.StreamListener
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
java.util.HashMap
;
@Slf4j
@Slf4j
public
abstract
class
AbstractSmsRedisReceiver
implements
StreamListener
<
String
,
MapRecord
<
String
,
String
,
String
>>
{
public
abstract
class
AbstractSmsRedisReceiver
implements
StreamListener
<
String
,
MapRecord
<
String
,
String
,
String
>>
{
...
@@ -21,33 +24,44 @@ public abstract class AbstractSmsRedisReceiver implements StreamListener<String,
...
@@ -21,33 +24,44 @@ public abstract class AbstractSmsRedisReceiver implements StreamListener<String,
@Override
@Override
public
void
onMessage
(
MapRecord
<
String
,
String
,
String
>
message
)
{
public
void
onMessage
(
MapRecord
<
String
,
String
,
String
>
message
)
{
log
.
info
(
"CONSUMER SMS[streamKey:{},messageId:{},stream:{},body:{}]"
,
log
.
debug
(
"CONSUMER SMS[streamKey:{},messageId:{},stream:{},body:{}]"
,
this
.
getRedisStreamKey
(),
message
.
getId
(),
message
.
getStream
(),
message
.
getValue
());
this
.
getRedisStreamKey
(),
message
.
getId
(),
message
.
getStream
(),
message
.
getValue
());
boolean
result
=
this
.
consumerSmsSendHandler
(
message
.
getValue
().
get
(
"message"
));
boolean
result
=
this
.
consumerSmsSendHandler
(
message
.
getValue
().
get
(
"message"
));
log
.
info
(
"CONSUMER SMS RESULT:{} ==> MESSAGE_ID:{}"
,
result
,
message
.
getId
());
log
.
debug
(
"CONSUMER SMS RESULT:{}"
,
result
);
try
{
stringRedisTemplate
.
opsForStream
().
acknowledge
(
getRedisStreamGroup
(),
message
);
// 消费成功确认,消息删除和消息确认是一个事务
stringRedisTemplate
.
opsForStream
().
delete
(
this
.
getRedisStreamKey
(),
message
.
getId
());
if
(
result
)
{
}
catch
(
Exception
e
)
{
log
.
info
(
"CONSUMER SMS SUCC ==> MESSAGE_ID:{}"
,
message
.
getId
());
log
.
error
(
"#CONSUMER SMS RESULT:{} ==> DEL_REDIS_QUEUE_MSG_EXCEPTION[MESSAGE_ID:{},MSG:{}]"
,
result
,
message
.
getId
(),
JsonUtils
.
toJson
(
message
),
e
);
}
finally
{
try
{
try
{
stringRedisTemplate
.
opsForStream
().
acknowledge
(
getRedisStreamGroup
(),
message
);
stringRedisTemplate
.
opsForStream
().
delete
(
this
.
getRedisStreamKey
(),
message
.
getId
());
stringRedisTemplate
.
opsForStream
().
delete
(
this
.
getRedisStreamKey
(),
message
.
getId
());
}
catch
(
Exception
e
)
{
}
catch
(
Exception
ignored
)
{
log
.
error
(
"CONSUMER SMS SUC ==> DEL_REDIS_QUEUE_MSG_EXCEPTION[MESSAGE_ID:{}]"
,
message
.
getId
(),
e
);
}
}
}
}
}
}
private
boolean
consumerSmsSendHandler
(
String
msg
)
{
private
boolean
consumerSmsSendHandler
(
String
msg
)
{
boolean
aBoolean
=
false
;
try
{
try
{
SmsMessage
smsMessage
=
JsonUtils
.
fromJson
(
msg
,
SmsMessage
.
class
);
SmsMessage
smsMessage
=
JsonUtils
.
fromJson
(
msg
,
SmsMessage
.
class
);
return
smsProcessor
.
send
(
smsMessage
.
getPhone
(),
smsMessage
.
getSignName
(),
smsMessage
.
getTemplateCode
(),
smsMessage
.
getTemplateParam
().
toString
());
aBoolean
=
smsProcessor
.
send
(
smsMessage
.
getPhone
(),
smsMessage
.
getSignName
(),
smsMessage
.
getTemplateCode
(),
smsMessage
.
getTemplateParam
().
toString
());
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
error
(
"CONSUMER SMS FAIL ==> {}"
,
e
.
getMessage
(),
e
);
log
.
error
(
"CONSUMER SMS FAIL ==> {}"
,
e
.
getMessage
(),
e
);
return
false
;
}
finally
{
if
(!
aBoolean
)
{
HashMap
<
String
,
String
>
map
=
CollectionUtil
.
mapStringString
();
map
.
put
(
"message"
,
msg
);
stringRedisTemplate
.
opsForStream
().
add
(
StreamRecords
.
mapBacked
(
map
).
withStreamKey
(
this
.
getRedisStreamKey
()));
}
}
}
return
aBoolean
;
}
}
protected
abstract
String
getRedisStreamKey
();
protected
abstract
String
getRedisStreamKey
();
protected
abstract
String
getRedisStreamGroup
();
}
}
\ No newline at end of file
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/AbstractSqlOptOrderCloseRedisReceiver.java
View file @
fe4c3436
package
com
.
liquidnet
.
service
.
consumer
.
kylin
.
receiver
;
package
com
.
liquidnet
.
service
.
consumer
.
kylin
.
receiver
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.commons.lang.util.CollectionUtil
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.service.base.OrderCloseMapping
;
import
com.liquidnet.service.base.OrderCloseMapping
;
import
com.liquidnet.service.consumer.kylin.Utils.KylinUtils
;
import
com.liquidnet.service.consumer.kylin.Utils.KylinUtils
;
...
@@ -9,9 +10,12 @@ import com.liquidnet.service.kylin.dto.vo.mongo.KylinOrderTicketVo;
...
@@ -9,9 +10,12 @@ import com.liquidnet.service.kylin.dto.vo.mongo.KylinOrderTicketVo;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.connection.stream.MapRecord
;
import
org.springframework.data.redis.connection.stream.MapRecord
;
import
org.springframework.data.redis.connection.stream.StreamRecords
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.data.redis.stream.StreamListener
;
import
org.springframework.data.redis.stream.StreamListener
;
import
java.util.HashMap
;
@Slf4j
@Slf4j
public
abstract
class
AbstractSqlOptOrderCloseRedisReceiver
implements
StreamListener
<
String
,
MapRecord
<
String
,
String
,
String
>>
{
public
abstract
class
AbstractSqlOptOrderCloseRedisReceiver
implements
StreamListener
<
String
,
MapRecord
<
String
,
String
,
String
>>
{
@Autowired
@Autowired
...
@@ -23,25 +27,28 @@ public abstract class AbstractSqlOptOrderCloseRedisReceiver implements StreamLis
...
@@ -23,25 +27,28 @@ public abstract class AbstractSqlOptOrderCloseRedisReceiver implements StreamLis
@Override
@Override
public
void
onMessage
(
MapRecord
<
String
,
String
,
String
>
message
)
{
public
void
onMessage
(
MapRecord
<
String
,
String
,
String
>
message
)
{
log
.
info
(
"CONSUMER SQL[streamKey:{},messageId:{},stream:{},body:{}]"
,
log
.
debug
(
"CONSUMER SQL[streamKey:{},messageId:{},stream:{},body:{}]"
,
this
.
getRedisStreamKey
(),
message
.
getId
(),
message
.
getStream
(),
message
.
getValue
());
this
.
getRedisStreamKey
(),
message
.
getId
(),
message
.
getStream
(),
message
.
getValue
());
boolean
result
=
this
.
consumerSqlOperationOrderCloseHandler
(
message
.
getValue
().
get
(
"message"
));
boolean
result
=
this
.
consumerSqlOperationOrderCloseHandler
(
message
.
getValue
().
get
(
"message"
));
log
.
info
(
"CONSUMER SQL RESULT:{} ==> MESSAGE_ID:{}"
,
result
,
message
.
getId
());
log
.
debug
(
"CONSUMER SQL RESULT:{}"
,
result
);
try
{
stringRedisTemplate
.
opsForStream
().
acknowledge
(
getRedisStreamGroup
(),
message
);
// 消费成功确认,消息删除和消息确认是一个事务
stringRedisTemplate
.
opsForStream
().
delete
(
this
.
getRedisStreamKey
(),
message
.
getId
());
if
(
result
)
{
}
catch
(
Exception
e
)
{
log
.
info
(
"CONSUMER SMS SUCC ==> MESSAGE_ID:{}"
,
message
.
getId
());
log
.
error
(
"#CONSUMER SQL RESULT:{} ==> DEL_REDIS_QUEUE_MSG_EXCEPTION[MESSAGE_ID:{},MSG:{}]"
,
result
,
message
.
getId
(),
JsonUtils
.
toJson
(
message
),
e
);
}
finally
{
try
{
try
{
stringRedisTemplate
.
opsForStream
().
acknowledge
(
getRedisStreamGroup
(),
message
);
stringRedisTemplate
.
opsForStream
().
delete
(
this
.
getRedisStreamKey
(),
message
.
getId
());
stringRedisTemplate
.
opsForStream
().
delete
(
this
.
getRedisStreamKey
(),
message
.
getId
());
}
catch
(
Exception
e
)
{
}
catch
(
Exception
ignored
)
{
log
.
error
(
"CONSUMER SMS SUCC ==> DEL_REDIS_QUEUE_MSG_EXCEPTION[MESSAGE_ID:{}]"
,
message
.
getId
(),
e
);
}
}
}
}
}
}
private
boolean
consumerSqlOperationOrderCloseHandler
(
String
msg
)
{
private
boolean
consumerSqlOperationOrderCloseHandler
(
String
msg
)
{
boolean
aBoolean
=
false
;
try
{
try
{
OrderCloseMapping
.
orderCloseMessage
mqMessage
=
JsonUtils
.
fromJson
(
msg
,
OrderCloseMapping
.
orderCloseMessage
.
class
);
OrderCloseMapping
.
orderCloseMessage
mqMessage
=
JsonUtils
.
fromJson
(
msg
,
OrderCloseMapping
.
orderCloseMessage
.
class
);
...
@@ -61,12 +68,20 @@ public abstract class AbstractSqlOptOrderCloseRedisReceiver implements StreamLis
...
@@ -61,12 +68,20 @@ public abstract class AbstractSqlOptOrderCloseRedisReceiver implements StreamLis
}
}
}
}
return
true
;
aBoolean
=
true
;
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
error
(
"CONSUMER SMS FAIL ==> {}"
,
e
.
getMessage
(),
e
);
log
.
error
(
"CONSUMER SQL FAIL ==> {}"
,
e
.
getMessage
(),
e
);
return
false
;
}
finally
{
if
(!
aBoolean
)
{
HashMap
<
String
,
String
>
map
=
CollectionUtil
.
mapStringString
();
map
.
put
(
"message"
,
msg
);
stringRedisTemplate
.
opsForStream
().
add
(
StreamRecords
.
mapBacked
(
map
).
withStreamKey
(
this
.
getRedisStreamKey
()));
}
}
}
return
aBoolean
;
}
}
protected
abstract
String
getRedisStreamKey
();
protected
abstract
String
getRedisStreamKey
();
protected
abstract
String
getRedisStreamGroup
();
}
}
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/AbstractSqlRedisReceiver.java
View file @
fe4c3436
package
com
.
liquidnet
.
service
.
consumer
.
kylin
.
receiver
;
package
com
.
liquidnet
.
service
.
consumer
.
kylin
.
receiver
;
import
com.liquidnet.commons.lang.util.CollectionUtil
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.service.base.SqlMapping
;
import
com.liquidnet.service.base.SqlMapping
;
import
com.liquidnet.service.consumer.service.IBaseDao
;
import
com.liquidnet.service.consumer.service.IBaseDao
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.connection.stream.MapRecord
;
import
org.springframework.data.redis.connection.stream.MapRecord
;
import
org.springframework.data.redis.connection.stream.StreamRecords
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.data.redis.stream.StreamListener
;
import
org.springframework.data.redis.stream.StreamListener
;
import
java.util.HashMap
;
@Slf4j
@Slf4j
public
abstract
class
AbstractSqlRedisReceiver
implements
StreamListener
<
String
,
MapRecord
<
String
,
String
,
String
>>
{
public
abstract
class
AbstractSqlRedisReceiver
implements
StreamListener
<
String
,
MapRecord
<
String
,
String
,
String
>>
{
@Autowired
@Autowired
...
@@ -18,33 +22,44 @@ public abstract class AbstractSqlRedisReceiver implements StreamListener<String,
...
@@ -18,33 +22,44 @@ public abstract class AbstractSqlRedisReceiver implements StreamListener<String,
@Override
@Override
public
void
onMessage
(
MapRecord
<
String
,
String
,
String
>
message
)
{
public
void
onMessage
(
MapRecord
<
String
,
String
,
String
>
message
)
{
log
.
info
(
"CONSUMER SQL[streamKey:{},messageId:{},stream:{},body:{}]"
,
log
.
debug
(
"CONSUMER SQL[streamKey:{},messageId:{},stream:{},body:{}]"
,
this
.
getRedisStreamKey
(),
message
.
getId
(),
message
.
getStream
(),
message
.
getValue
());
this
.
getRedisStreamKey
(),
message
.
getId
(),
message
.
getStream
(),
message
.
getValue
());
boolean
result
=
this
.
consumerSqlDaoHandler
(
message
.
getValue
().
get
(
"message"
));
boolean
result
=
this
.
consumerSqlDaoHandler
(
message
.
getValue
().
get
(
"message"
));
log
.
info
(
"CONSUMER SQL RESULT:{} ==> MESSAGE_ID:{}"
,
result
,
message
.
getId
());
log
.
debug
(
"CONSUMER SQL RESULT:{}"
,
result
);
try
{
stringRedisTemplate
.
opsForStream
().
acknowledge
(
getRedisStreamGroup
(),
message
);
// 消费成功确认,消息删除和消息确认是一个事务
stringRedisTemplate
.
opsForStream
().
delete
(
this
.
getRedisStreamKey
(),
message
.
getId
());
if
(
result
)
{
}
catch
(
Exception
e
)
{
log
.
info
(
"CONSUMER SMS SUCC ==> MESSAGE_ID:{}"
,
message
.
getId
());
log
.
error
(
"#CONSUMER SQL RESULT:{} ==> DEL_REDIS_QUEUE_MSG_EXCEPTION[MESSAGE_ID:{},MSG:{}]"
,
result
,
message
.
getId
(),
JsonUtils
.
toJson
(
message
),
e
);
}
finally
{
try
{
try
{
stringRedisTemplate
.
opsForStream
().
acknowledge
(
getRedisStreamGroup
(),
message
);
stringRedisTemplate
.
opsForStream
().
delete
(
this
.
getRedisStreamKey
(),
message
.
getId
());
stringRedisTemplate
.
opsForStream
().
delete
(
this
.
getRedisStreamKey
(),
message
.
getId
());
}
catch
(
Exception
e
)
{
}
catch
(
Exception
ignored
)
{
log
.
error
(
"CONSUMER SMS SUCC ==> DEL_REDIS_QUEUE_MSG_EXCEPTION[MESSAGE_ID:{}]"
,
message
.
getId
(),
e
);
}
}
}
}
}
}
private
boolean
consumerSqlDaoHandler
(
String
msg
)
{
private
boolean
consumerSqlDaoHandler
(
String
msg
)
{
Boolean
aBoolean
=
false
;
try
{
try
{
SqlMapping
.
SqlMessage
sqlMessage
=
JsonUtils
.
fromJson
(
msg
,
SqlMapping
.
SqlMessage
.
class
);
SqlMapping
.
SqlMessage
sqlMessage
=
JsonUtils
.
fromJson
(
msg
,
SqlMapping
.
SqlMessage
.
class
);
return
baseDao
.
batchSqls
(
sqlMessage
.
getSqls
(),
sqlMessage
.
getArgs
());
aBoolean
=
baseDao
.
batchSqls
(
sqlMessage
.
getSqls
(),
sqlMessage
.
getArgs
());
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
error
(
"CONSUMER SMS FAIL ==> {}"
,
e
.
getMessage
(),
e
);
log
.
error
(
"CONSUMER SQL FAIL ==> {}"
,
e
.
getMessage
(),
e
);
return
false
;
}
finally
{
if
(!
aBoolean
)
{
HashMap
<
String
,
String
>
map
=
CollectionUtil
.
mapStringString
();
map
.
put
(
"message"
,
msg
);
stringRedisTemplate
.
opsForStream
().
add
(
StreamRecords
.
mapBacked
(
map
).
withStreamKey
(
this
.
getRedisStreamKey
()));
}
}
}
return
aBoolean
;
}
}
protected
abstract
String
getRedisStreamKey
();
protected
abstract
String
getRedisStreamKey
();
protected
abstract
String
getRedisStreamGroup
();
}
}
\ No newline at end of file
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/ConsumerKylinSmsNoticeRdsReceiver.java
View file @
fe4c3436
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSmsNoticeRdsReceiver extends AbstractSmsRedisReceiver
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSmsNoticeRdsReceiver extends AbstractSmsRedisReceiver
protected
String
getRedisStreamKey
()
{
protected
String
getRedisStreamKey
()
{
return
MQConst
.
KylinQueue
.
SMS_NOTICE
.
getKey
();
return
MQConst
.
KylinQueue
.
SMS_NOTICE
.
getKey
();
}
}
@Override
protected
String
getRedisStreamGroup
()
{
return
MQConst
.
KylinQueue
.
SMS_NOTICE
.
getGroup
();
}
}
}
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/ConsumerKylinSqlOptOrderCloseRedisReceiver.java
View file @
fe4c3436
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlOptOrderCloseRedisReceiver extends AbstractSqlOptOr
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlOptOrderCloseRedisReceiver extends AbstractSqlOptOr
protected
String
getRedisStreamKey
()
{
protected
String
getRedisStreamKey
()
{
return
MQConst
.
KylinQueue
.
SQL_ORDER_CLOSE
.
getKey
();
return
MQConst
.
KylinQueue
.
SQL_ORDER_CLOSE
.
getKey
();
}
}
@Override
protected
String
getRedisStreamGroup
()
{
return
MQConst
.
KylinQueue
.
SQL_ORDER_CLOSE
.
getGroup
();
}
}
}
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/ConsumerKylinSqlOrderAgainRdsReceiver.java
View file @
fe4c3436
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlOrderAgainRdsReceiver extends AbstractSqlRedisRecei
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlOrderAgainRdsReceiver extends AbstractSqlRedisRecei
protected
String
getRedisStreamKey
()
{
protected
String
getRedisStreamKey
()
{
return
MQConst
.
KylinQueue
.
SQL_ORDER_AGAIN
.
getKey
();
return
MQConst
.
KylinQueue
.
SQL_ORDER_AGAIN
.
getKey
();
}
}
@Override
protected
String
getRedisStreamGroup
()
{
return
MQConst
.
KylinQueue
.
SQL_ORDER_AGAIN
.
getGroup
();
}
}
}
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/ConsumerKylinSqlOrderCreateRdsReceiver.java
View file @
fe4c3436
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlOrderCreateRdsReceiver extends AbstractSqlRedisRece
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlOrderCreateRdsReceiver extends AbstractSqlRedisRece
protected
String
getRedisStreamKey
()
{
protected
String
getRedisStreamKey
()
{
return
MQConst
.
KylinQueue
.
SQL_ORDER_CREATE
.
getKey
();
return
MQConst
.
KylinQueue
.
SQL_ORDER_CREATE
.
getKey
();
}
}
@Override
protected
String
getRedisStreamGroup
()
{
return
MQConst
.
KylinQueue
.
SQL_ORDER_CREATE
.
getGroup
();
}
}
}
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/ConsumerKylinSqlOrderOvertimeRefundRdsReceiver.java
View file @
fe4c3436
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlOrderOvertimeRefundRdsReceiver extends AbstractSqlR
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlOrderOvertimeRefundRdsReceiver extends AbstractSqlR
protected
String
getRedisStreamKey
()
{
protected
String
getRedisStreamKey
()
{
return
MQConst
.
KylinQueue
.
SQL_ORDER_OVERTIME_REFUND
.
getKey
();
return
MQConst
.
KylinQueue
.
SQL_ORDER_OVERTIME_REFUND
.
getKey
();
}
}
@Override
protected
String
getRedisStreamGroup
()
{
return
MQConst
.
KylinQueue
.
SQL_ORDER_OVERTIME_REFUND
.
getGroup
();
}
}
}
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/ConsumerKylinSqlOrderPayRdsReceiver.java
View file @
fe4c3436
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlOrderPayRdsReceiver extends AbstractSqlRedisReceive
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlOrderPayRdsReceiver extends AbstractSqlRedisReceive
protected
String
getRedisStreamKey
()
{
protected
String
getRedisStreamKey
()
{
return
MQConst
.
KylinQueue
.
SQL_ORDER_PAY
.
getKey
();
return
MQConst
.
KylinQueue
.
SQL_ORDER_PAY
.
getKey
();
}
}
@Override
protected
String
getRedisStreamGroup
()
{
return
MQConst
.
KylinQueue
.
SQL_ORDER_PAY
.
getGroup
();
}
}
}
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/ConsumerKylinSqlOrderRefundRdsReceiver.java
View file @
fe4c3436
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlOrderRefundRdsReceiver extends AbstractSqlRedisRece
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlOrderRefundRdsReceiver extends AbstractSqlRedisRece
protected
String
getRedisStreamKey
()
{
protected
String
getRedisStreamKey
()
{
return
MQConst
.
KylinQueue
.
SQL_ORDER_REFUND
.
getKey
();
return
MQConst
.
KylinQueue
.
SQL_ORDER_REFUND
.
getKey
();
}
}
@Override
protected
String
getRedisStreamGroup
()
{
return
MQConst
.
KylinQueue
.
SQL_ORDER_REFUND
.
getGroup
();
}
}
}
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/ConsumerKylinSqlOrderWithdrawRdsReceiver.java
View file @
fe4c3436
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlOrderWithdrawRdsReceiver extends AbstractSqlRedisRe
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlOrderWithdrawRdsReceiver extends AbstractSqlRedisRe
protected
String
getRedisStreamKey
()
{
protected
String
getRedisStreamKey
()
{
return
MQConst
.
KylinQueue
.
SQL_ORDER_WITHDRAW
.
getKey
();
return
MQConst
.
KylinQueue
.
SQL_ORDER_WITHDRAW
.
getKey
();
}
}
@Override
protected
String
getRedisStreamGroup
()
{
return
MQConst
.
KylinQueue
.
SQL_ORDER_WITHDRAW
.
getGroup
();
}
}
}
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/ConsumerKylinSqlPerformanceLackRdsReceiver.java
View file @
fe4c3436
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlPerformanceLackRdsReceiver extends AbstractSqlRedis
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlPerformanceLackRdsReceiver extends AbstractSqlRedis
protected
String
getRedisStreamKey
()
{
protected
String
getRedisStreamKey
()
{
return
MQConst
.
KylinQueue
.
SQL_PERFORMANCE_LACK
.
getKey
();
return
MQConst
.
KylinQueue
.
SQL_PERFORMANCE_LACK
.
getKey
();
}
}
@Override
protected
String
getRedisStreamGroup
()
{
return
MQConst
.
KylinQueue
.
SQL_PERFORMANCE_LACK
.
getGroup
();
}
}
}
liquidnet-bus-service/liquidnet-service-consumer-all/liquidnet-service-consumer-kylin/src/main/java/com/liquidnet/service/consumer/kylin/receiver/ConsumerKylinSqlStationRdsReceiver.java
View file @
fe4c3436
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlStationRdsReceiver extends AbstractSqlRedisReceiver
...
@@ -9,4 +9,9 @@ public class ConsumerKylinSqlStationRdsReceiver extends AbstractSqlRedisReceiver
protected
String
getRedisStreamKey
()
{
protected
String
getRedisStreamKey
()
{
return
MQConst
.
KylinQueue
.
SQL_STATION
.
getKey
();
return
MQConst
.
KylinQueue
.
SQL_STATION
.
getKey
();
}
}
@Override
protected
String
getRedisStreamGroup
()
{
return
MQConst
.
KylinQueue
.
SQL_STATION
.
getGroup
();
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment