1. JMS消息模型
-
即
- java Message service
P2P(Point to Point) 点对点模式
发布订阅模式 Publish/Subscribe(Pub/Sub)
- 包含三个角色
- 主题(Topic)
- 发布者(Publisher)
- 订阅者(Subscricber)
- 特点
- 每个消息可以有多个消费者
- 发布者和订阅者之间有时间上的依赖性。针对每个主题(Topic)的订阅者,它必须创建一个订阅之后,才能消费发布者的消息
- 为了消费消息,订阅者必须保持运行的状态
- so
- 为了缓和这样严格的时间相关性,JMS允许订阅者创建一个可持久化的订阅。这样,即使订阅者没有被激活(运行),它也能接受到发布和的消息
- 如果希望发送的消息可以被多个消费者处理的话,那么可以采用Pub和Sub模型
- 包含三个角色
2. ActiveMQ Topic 消息失败重发
- 即是我们的消息的接收方,没有成功的消费消息,我们要去要去重发这个消息,让我们的消费者可以消费到这个消息,这个机制就是我们的重发
JMS消息确认机制
- 在Session中需要定义几个常量
- AUTO_ACKNOWLEDGE = 1 //自动确认
- CLIENT_ACKNOWLEDGE = 2 //客户端手动确认
- DUPS_OK_ACKNOWLEDGE = 3 //自动批量确认
- SESSION_TRANSACTED = 0 //事务提交并确认
- 在Session中需要定义几个常量
代码确认
- ActiveMQ Topic 消息持久化订阅
持久化到文件(默认)
在Conf文件夹中,查看是否有
<persistenceAdapter>
<kahaDB directory="${activemq.data}/kahadb"/>
</persistenceAdapter>
持久化到数据库(mysql数据库)