jms(二):JMS规范

1、JMS相关概念

提供者:实现JMS规范的消息中间件服务器

客户端:发送或者接收消息的应用程序

生产者和发布者:创建并发送消息的客户端

消费者和订阅者:接收并处理消息的客户端

消息:应用程序之间传递的数据内容

消息模式:在客户端之间传递消息的方式,JMS中定义了主题和队列两种模式

2、JMS消息模式

2.1、队列模式:

客户端包括生产者和消费者

队列中的消息只能被一个消费者消费

消费者可以随时消费队列中的消息

2.2、主题模式

客户端包括发布者和订阅者

主题中的消息被所有订阅者消费

消费者不能消费订阅之前就发送到主题中的消息

3、JMS编码接口

ConnectionFactory 用于创建连接消息中间件的连接工厂

Connection 代表了应用程序和消息服务器之间的通信链路

Destination 指消息发布和接收的地点,包括队列或主题

Session 表示一个单线程的上下文,用于发送和接收消息

MessageConsumer 由会话创建,用于接收发送到目标的消息

MessageProducer 由会话创建,用于发送消息到目标

Message 是在消费者和生产者之间传送的对象,消息头,一组消息属性,一个消息体

4、JMS编码接口之间的关系

ConnectionFactory 创建Connection

Connection 创建(多个)Session

Session 创建MessageProducer,MessageConsumer,Message

MessageProducer 发送 Destination

MessageConsumer 接收Destination

5、ActiveMq的安装

Windows:

下载安装包:http://activemq.apache.org/activemq-5154-release.html

直接启动 activemq.bat

当出现:ActiveMq Webconsole available at http://0.0.0.0:8161 说明启动成功。

 

可能出现的问题(Windows7/32位/4G内存):

wrapper : Startup failed:Timed out waiting for a signal from the JVM.

wrapper: JVM did not exit on request, terminated.

解决 :

在配置文件wrapper.conf中增加配置:

wrapper.startup.timeout=0

wrapper.ping.timeout=0

 

使用服务启动 InstallService.bat,然后去服务列表启动activemq服务

启动成功后,再浏览器输入地址加端口8161访问:http://127.0.0.1:8161

选择Manage ActiveMq broker登录,账号/密码:admin/admin

登录成功后,可以看到用户信息。

Linux:

下载安装包,解压,./bin activemq.sh start

 

队列模式下,多个消费者平均接收消息。消费者可以在生产者之后启动。

主题模式下,多个消费者接收的是全部的消息,并且消费者必须要先订阅,才能接收到消息。

猜你喜欢

转载自blog.csdn.net/ynzz123/article/details/81463082
jms