activemq的高级特性之消息持久订阅
如果采用topic模式发送的时候,mq关闭了或消费者关闭了。在启动的时候,就会收不到mq发送的消息,所以就会出现消息持久订阅。
消息持久订阅:第一:消息要持久化。第二:订阅者要持久化。
1:消息持久化,修改发送端
messageProducer.setDeliveryMode(DeliveryMode.NON_PERSISTENT); //mq的消息不会往数据库放
DeliveryMode.PERSISTENT //消息会持久化,默认值
2:订阅者要持久化
Topic destination = session.createTopic("hello-world"); //消息的目的地
TopicSubscriber topicSubscriber =
session.createDurableSubscriber(destination,"xiangxue"); //持久订阅
具体的代码参考:https://www.cnblogs.com/orange-time/p/10608766.html