Message Queue 4.4 是一个次要发行版,其中包含很多增强功能以及错误修复程序。本部分介绍了此发行版中包含的新增功能:
由于 JMS 规范没有为代理和客户端之间的通信定义有线通信协议,因此每个 JMS 提供者(包括 Message Queue)都定义并使用了自己的专有协议。这种情况导致无法在 JMS 提供者之间进行互操作。
Message Queue 4.4 中的 JMS 桥接器服务允许 Message Queue 代理将其目的地映射到外部 JMS 提供者中的目的地,从而弥补了该缺陷。此映射可有效地使 Message Queue 代理与外部 JMS 提供者的客户端进行通信。
JMS 桥接器服务支持映射满足下列条件的外部 JMS 提供者中的目的地:
符合 JMS 1.1
支持 JNDI 管理对象
使用类型为 javax.jms.ConnectionFactory 或 javax.jms.XAConnectionFactory 的连接工厂
对于处理的映射,支持将 XA 接口作为资源管理器
许多开源和商业 JMS 提供者都满足这些要求,从而使 JMS 桥接器服务能有效地将 Message Queue 集成到使用其他 JMS 提供者的现有消息传送环境中。
有关 JMS 桥接器服务的详细信息,请参见:
有关 JMS 桥接器服务的体系结构、子组件和功能的信息,请参见《Sun GlassFish Message Queue 4.4 Technical Overview》中的“JMS Bridge Service”。
有关在代理中配置和管理 JMS 桥接器的信息,请参见《Sun GlassFish Message Queue 4.4 Administration Guide》中的“Configuring and Managing JMS Bridge Services”。
如前面所述,JMS 规范没有为代理和客户端之间的通信定义有线通信协议。位于 http://stomp.codehaus.org 的 STOMP(Streaming Text Oriented Messaging Protocol,面向流化处理文本的消息传送协议)开源项目定义了一个简单的有线通信协议,采用任意语言编写的客户端都可以使用该协议与支持 STOMP 协议的任何消息传送提供者进行通信。
Message Queue 4.4 通过 STOMP 桥接器服务提供 STOMP 协议支持。利用此服务,Message Queue 代理可以与 STOMP 客户端进行通信。
有关 STOMP 桥接器服务的详细信息,请参见:
有关 STOMP 桥接器服务的体系结构和功能的信息,请参见《Sun GlassFish Message Queue 4.4 Technical Overview》中的“STOMP Bridge Service”。
有关在代理中配置和管理 STOMP 桥接器的信息,请参见《Sun GlassFish Message Queue 4.4 Administration Guide》中的“Configuring and Managing STOMP Bridge Services”。
Message Queue 4.4 中还提供了以下增强功能:
UMS 现在提供了下列使用 HTTP GET 的函数以提供多种服务:
ssend:发送简单文本消息。
sreceive:接收简单文本消息。
getBrokerInfo:获取有关代理的信息。
getConfiguration:获取有关 UMS 配置的信息。
debug:打开和关闭 UMS 服务器中的调试日志记录。
ping:与代理通信以确认其处于运行状态。
有关 UMS 的概述,请参见通用消息服务 (Universal Message Service, UMS)。有关 UMS API 的文档,请参见 https://mq.dev.java.net/4.3-content/ums/protocol.html。有关使用多种语言进行编程的示例,请参见 https://mq.dev.java.net/4.3-content/ums/examples/README.html。
Message Queue 现在使用开源映像打包系统 (Image Packaging System, IPS) 进行了打包以便分发,该系统也称为 pkg(5) 系统。添加此打包方法的目的是为了方便 Message Queue 与 Sun GlassFish Enterprise Server 2.1.1 集成。