Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
D
device-new-platform
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
赵啸非
device-new-platform
Commits
0c9231d8
Commit
0c9231d8
authored
Dec 18, 2023
by
赵啸非
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
更新下发消息为线程池发送
parent
ef269538
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
46 additions
and
2 deletions
+46
-2
device-manager/src/main/java/com/mortals/xhx/base/framework/config/RabbitConfig.java
...a/com/mortals/xhx/base/framework/config/RabbitConfig.java
+26
-2
device-manager/src/main/java/com/mortals/xhx/base/system/message/RabbitMessageService.java
...mortals/xhx/base/system/message/RabbitMessageService.java
+10
-0
device-manager/src/main/java/com/mortals/xhx/base/system/message/impl/MessageProducer.java
...mortals/xhx/base/system/message/impl/MessageProducer.java
+5
-0
device-manager/src/main/java/com/mortals/xhx/common/utils/DownMsgTask.java
...c/main/java/com/mortals/xhx/common/utils/DownMsgTask.java
+5
-0
No files found.
device-manager/src/main/java/com/mortals/xhx/base/framework/config/RabbitConfig.java
View file @
0c9231d8
...
@@ -5,11 +5,13 @@ import com.mortals.xhx.base.framework.listener.RabbitLoggingErrorHandler;
...
@@ -5,11 +5,13 @@ import com.mortals.xhx.base.framework.listener.RabbitLoggingErrorHandler;
import
com.mortals.xhx.base.framework.listener.SimpleDynamicListener
;
import
com.mortals.xhx.base.framework.listener.SimpleDynamicListener
;
import
com.mortals.xhx.base.system.message.MessageCallbackService
;
import
com.mortals.xhx.base.system.message.MessageCallbackService
;
import
com.mortals.xhx.base.system.message.impl.MessageProducer
;
import
com.mortals.xhx.base.system.message.impl.MessageProducer
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.amqp.core.AcknowledgeMode
;
import
org.springframework.amqp.core.AcknowledgeMode
;
import
org.springframework.amqp.rabbit.AsyncRabbitTemplate
;
import
org.springframework.amqp.rabbit.AsyncRabbitTemplate
;
import
org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory
;
import
org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory
;
import
org.springframework.amqp.rabbit.connection.CachingConnectionFactory
;
import
org.springframework.amqp.rabbit.connection.CachingConnectionFactory
;
import
org.springframework.amqp.rabbit.connection.ConnectionFactory
;
import
org.springframework.amqp.rabbit.connection.ConnectionFactory
;
import
org.springframework.amqp.rabbit.connection.CorrelationData
;
import
org.springframework.amqp.rabbit.core.RabbitAdmin
;
import
org.springframework.amqp.rabbit.core.RabbitAdmin
;
import
org.springframework.amqp.rabbit.core.RabbitTemplate
;
import
org.springframework.amqp.rabbit.core.RabbitTemplate
;
import
org.springframework.amqp.rabbit.listener.DirectMessageListenerContainer
;
import
org.springframework.amqp.rabbit.listener.DirectMessageListenerContainer
;
...
@@ -24,6 +26,7 @@ import org.springframework.core.annotation.Order;
...
@@ -24,6 +26,7 @@ import org.springframework.core.annotation.Order;
@Configuration
@Configuration
@Order
(
1
)
@Order
(
1
)
@Slf4j
public
class
RabbitConfig
{
public
class
RabbitConfig
{
@Autowired
@Autowired
private
SimpleDynamicListener
simpleDynamicListener
;
private
SimpleDynamicListener
simpleDynamicListener
;
...
@@ -70,8 +73,29 @@ public class RabbitConfig {
...
@@ -70,8 +73,29 @@ public class RabbitConfig {
@Bean
@Bean
public
RabbitTemplate
rabbitTemplate
(
ConnectionFactory
connectionFactory
)
{
public
RabbitTemplate
rabbitTemplate
(
ConnectionFactory
connectionFactory
)
{
RabbitTemplate
rabbitTemplate
=
new
RabbitTemplate
(
connectionFactory
);
RabbitTemplate
rabbitTemplate
=
new
RabbitTemplate
(
connectionFactory
);
rabbitTemplate
.
setReturnCallback
(
messageCallbackService
);
rabbitTemplate
.
setConfirmCallback
(
messageCallbackService
);
/* rabbitTemplate.setReturnCallback(new RabbitTemplate.ReturnCallback() {
@Override
public void returnedMessage(Message message, int replyCode, String replyText, String exchange, String routingKey) {
}
});*/
rabbitTemplate
.
setConfirmCallback
(
new
RabbitTemplate
.
ConfirmCallback
()
{
@Override
public
void
confirm
(
CorrelationData
correlationData
,
boolean
ack
,
String
cause
)
{
// 发送消息的时候发送的业务id
log
.
info
(
"发送消息id:{},ack:{},cause:{}"
,
correlationData
.
getId
(),
ack
,
cause
);
// 时候发送成功,即ACK
//log.info(ack);
// 发送失败的原因
// System.out.println(cause);
}
});
/* rabbitTemplate.setReturnCallback(messageCallbackService);
rabbitTemplate.setConfirmCallback(messageCallbackService);*/
return
rabbitTemplate
;
return
rabbitTemplate
;
}
}
...
...
device-manager/src/main/java/com/mortals/xhx/base/system/message/RabbitMessageService.java
View file @
0c9231d8
package
com.mortals.xhx.base.system.message
;
package
com.mortals.xhx.base.system.message
;
import
org.springframework.amqp.rabbit.connection.CorrelationData
;
public
interface
RabbitMessageService
{
public
interface
RabbitMessageService
{
...
@@ -11,6 +13,14 @@ public interface RabbitMessageService {
...
@@ -11,6 +13,14 @@ public interface RabbitMessageService {
*/
*/
void
sendMsg
(
String
exchange
,
String
routingKey
,
String
message
);
void
sendMsg
(
String
exchange
,
String
routingKey
,
String
message
);
/**
* 发送消息
*
* @author: zxfei
* @date: 2022/9/2 11:31
*/
void
sendMsg
(
String
exchange
,
String
routingKey
,
String
message
,
CorrelationData
correlationData
);
/**
/**
* 新增队列并绑定交换机与路由
* 新增队列并绑定交换机与路由
*
*
...
...
device-manager/src/main/java/com/mortals/xhx/base/system/message/impl/MessageProducer.java
View file @
0c9231d8
...
@@ -59,6 +59,11 @@ public class MessageProducer implements IMessageProduceService, RabbitMessageSer
...
@@ -59,6 +59,11 @@ public class MessageProducer implements IMessageProduceService, RabbitMessageSer
rabbitTemplate
.
convertAndSend
(
exchange
,
routingKey
,
message
,
correlationData
);
rabbitTemplate
.
convertAndSend
(
exchange
,
routingKey
,
message
,
correlationData
);
}
}
@Override
public
void
sendMsg
(
String
exchange
,
String
routingKey
,
String
message
,
CorrelationData
correlationData
)
{
rabbitTemplate
.
convertAndSend
(
exchange
,
routingKey
,
message
,
correlationData
);
}
@Override
@Override
public
void
queueAddAndBinds
(
String
exchange
,
String
routingKey
,
String
queue
)
{
public
void
queueAddAndBinds
(
String
exchange
,
String
routingKey
,
String
queue
)
{
Map
<
String
,
Object
>
args
=
new
HashMap
<>();
Map
<
String
,
Object
>
args
=
new
HashMap
<>();
...
...
device-manager/src/main/java/com/mortals/xhx/common/utils/DownMsgTask.java
View file @
0c9231d8
...
@@ -21,6 +21,7 @@ import com.mortals.xhx.queue.TbQueueMsg;
...
@@ -21,6 +21,7 @@ import com.mortals.xhx.queue.TbQueueMsg;
import
com.mortals.xhx.queue.TbQueueMsgHeaders
;
import
com.mortals.xhx.queue.TbQueueMsgHeaders
;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.amqp.rabbit.connection.CorrelationData
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.util.ObjectUtils
;
import
java.util.Comparator
;
import
java.util.Comparator
;
...
@@ -69,6 +70,10 @@ public class DownMsgTask implements Runnable {
...
@@ -69,6 +70,10 @@ public class DownMsgTask implements Runnable {
header
.
put
(
MessageHeader
.
TIMESTAMP
,
item
.
getTimestamp
().
toString
());
header
.
put
(
MessageHeader
.
TIMESTAMP
,
item
.
getTimestamp
().
toString
());
TbQueueMsg
queueMsg
=
new
DefaultTbQueueMsg
(
IdUtil
.
fastUUID
(),
item
.
getData
(),
header
);
TbQueueMsg
queueMsg
=
new
DefaultTbQueueMsg
(
IdUtil
.
fastUUID
(),
item
.
getData
(),
header
);
CorrelationData
correlationData
=
new
CorrelationData
();
correlationData
.
setId
(
deviceEntity
.
getDeviceCode
());
messageProducer
.
sendMsg
(
QueueKey
.
DEFAULT_EXCHANGE
,
Constant
.
DOWN_TOPIC
+
deviceEntity
.
getDeviceCode
(),
JSON
.
toJSONString
(
queueMsg
));
messageProducer
.
sendMsg
(
QueueKey
.
DEFAULT_EXCHANGE
,
Constant
.
DOWN_TOPIC
+
deviceEntity
.
getDeviceCode
(),
JSON
.
toJSONString
(
queueMsg
));
DeviceLogEntity
deviceLogEntity
=
new
DeviceLogEntity
();
DeviceLogEntity
deviceLogEntity
=
new
DeviceLogEntity
();
...
...
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