C/C++教程

消息中间件之JMS实践(ActiveMQ)

本文主要是介绍消息中间件之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、生产者

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

2、消费者

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

需要注意的是jdk版本需要是1.8以上

6、主题模式实践

1、生产者代码

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

2、消费者代码

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=


7、综述

ActiveMQ的主题模式和队列模式代码大同小异,只需要关注主题模式是发布订阅模型、队列模式是生产者消费者模型。发布订阅是一种广播形式,可以用来做消息同步,而生产者消费者模型可以用来做负载均衡。


这篇关于消息中间件之JMS实践(ActiveMQ)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!