Sun Java System Message Queue 3.7 UR1 技术概述

附录 A 可选 JMS 功能的 Message Queue 实现

JMS 规范指出了某些项是可选的:每个 JMS 提供者(供应商)可以选择是否实现这些项。本附录介绍 Message Queue 产品如何处理 JMS 可选项。

表 A–1 介绍 Message Queue 服务如何处理 JMS 可选项。

可选功能

表 A–1 可选的 JMS 功能

JMS 规范中的章节 

描述和 Message Queue 实现 

3.4.3 JMSMessageID

“由于创建消息 ID 比较麻烦,并会使消息体积增大,因此如果提示某些 JMS 提供者,告诉它们应用程序不使用消息 ID,则它们能够优化消息开销。JMS 消息生成方提供了禁用消息 ID 的提示。” 

Message Queue 实现:产品不会禁用消息 ID 生成(MessageProducer 中的所有 setDisableMessageID() 调用均被忽略)。所有消息都将包含一个有效的 MessageID 值。

3.4.12 覆盖消息头字段 

“JMS 未明确定义管理员应如何覆盖这些头字段值。不要求 JMS 提供者支持此管理选项。”

Message Queue 实现:Message Queue 产品支持通过配置客户端运行时环境以管理方式覆盖消息头字段的值(请参见消息头)。

3.5.9 JMS 定义的属性 

“JMS 将 'JMSX' 属性名前缀保留用于 JMS 定义的属性。”“除非另行规定,否则对这些属性的支持是可选的。”

Message Queue 实现:Message Queue 产品支持由 JMS 1.1 规范定义的 JMSX 属性(请参见《Sun Java System Message Queue 3.7 UR1 管理指南》中的附录 B “Message Queue 接口的稳定性”)。

3.5.10 特定于提供者的属性 

“JMS 将 'JMS_<vendor_name >' 属性名前缀保留用于特定于提供者的属性。”

Message Queue 实现:特定于提供者的属性的用途是提供支持提供者本地客户端使用 JMS 所需的特殊功能。不应将它们用于 JMS 至 JMS 的消息传送。

4.4.8 分布式事务 

“JMS 不要求提供者支持分布式事务。”

Message Queue 实现:此版本的 Message Queue 产品支持分布式事务(请参见事务)。

4.4.9 多个会话 

对于 PTP <点对点分布模型>,JMS 不为同一个队列指定并行 QueueReceivers 的语义,但 JMS 并不禁止提供者支持此功能。”有关详细信息,请参见 JMS 规范的第 5.8 节。

Message Queue 实现:Message Queue 实现支持以多个使用方为目的地的队列传送。有关详细信息,请参见点对点消息传送