标签:订阅 消费者 队列 JMS 中间件 生产者 消息中间件 ActiveMQ
1、消息中间件作用
作为一个消息传递中间层,方便信息发送者和接受者通信。
2、消息中间件好处
1、信息解耦:信息发送方和接收方通过中间件通信,不需要直接通信。
2、异步:消息被中间件处理,发送方和接收方都不用直接通信。
3、安全可靠:中间件做的还是很可靠地。。
4、横向扩展:支持多信息发送方和接收方
5、顺序保证:中间件功能。
3、常见消息中间件
JMS(Java Message Service):java平台中面向消息通信的API
1、ActiveMQ:Apache开源总线
2、RabbitMQ:同样是开源的,是一种AMQP协议实现,服务器是erlang编写
3、kafka:支持高吞吐量的分布式订阅系统,是一种分布式、可靠地、分区的日志订阅系统
4、JMS
1、队列模型:客户端包括生产者和消费者、队列中的(一个)消息只能被一个消费者消费;消费者可以随时消费队列中的消息
2、主题模型:客户端包括发布者和订阅者;主题中的消息能被所有订阅者订阅;消费者不能消费到订阅前发布的消息
5、队列模式代码
1、生产者
2、消费者
需要注意的是jdk版本需要是1.8以上
6、主题模式实践
1、生产者代码
2、消费者代码
7、综述
ActiveMQ的主题模式和队列模式代码大同小异,只需要关注主题模式是发布订阅模型、队列模式是生产者消费者模型。发布订阅是一种广播形式,可以用来做消息同步,而生产者消费者模型可以用来做负载均衡。
标签:订阅,消费者,队列,JMS,中间件,生产者,消息中间件,ActiveMQ 来源: https://blog.51cto.com/u_13979417/2872557
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。