云消息队列 RabbitMQ 版提供JMS库供JMS客户端接入云消息队列 RabbitMQ 版。本文介绍云消息队列 RabbitMQ 版JMS库的相关概念、获取方式、使用限制和使用教程。
背景信息
JMS是一种消息传递标准,允许基于Java EE(Java平台企业版)的应用程序组件创建、发送、接收、读取消息。JMS使分布式应用能够以松耦合、可靠、异步的方式进行通信。云消息队列 RabbitMQ 版JMS库支持JMS 1.1。
云消息队列 RabbitMQ 版JMS库
云消息队列 RabbitMQ 版JMS库是云消息队列 RabbitMQ 版提供的JMS接口。JMS应用只需变更少量代码,即可通过该接口接入云消息队列 RabbitMQ 版,将云消息队列 RabbitMQ 版作为JMS Provider。您可以使用云消息队列 RabbitMQ 版JMS库创建JMS Connection、JMS Session、JMS Producer和JMS Consumer。
如需了解JMS和AMQP的概念和差异,请参见AMQP和JMS差异。
获取方式
在Maven项目的pom.xml文件中添加以下依赖。
<dependency> <groupId>com.alibaba.mq-amqp.jms</groupId> <artifactId>mq-amqp-jms-client</artifactId> <version>1.11.2-1.0.0</version> <exclusions> <exclusion> <groupId>com.rabbitmq</groupId> <artifactId>amqp-client</artifactId> </exclusion> </exclusions> </dependency>
使用限制
不支持服务器会话。
未实现XA事务接口。
支持Topic选择器,未实现Queue选择器。
支持SSL和socket选项,但只能使用云消息队列 RabbitMQ 版JMS客户端提供的默认SSL连接协议。
不支持JMS NoLocal订阅。NoLocal订阅可以防止订阅者从自己的连接发布消息。您可以调用包含NoLocal参数的方法,但是调用会被忽略。
如需了解云消息队列 RabbitMQ 版JMS库接口实现情况,请参见JMS接口兼容性。
使用教程
项目 | 描述 | 文档 |
P2P | JMS P2P(点对点)消息收发模式具有以下特点:
| |
Pub/Sub | JMS Pub/Sub消息收发模式具有以下特点:
|