我对 HornetQ 有几个问题:
HornetQ 核心 API 和 JMS API 有什么区别?
使用其中之一有什么优点或缺点吗?
如果我使用核心 API 然后我决定更改我的消息传递总线(比如说 ActiveMQ)然后我必须更改我的所有代码,这是真的吗?
我对 HornetQ 有几个问题:
HornetQ 核心 API 和 JMS API 有什么区别?
使用其中之一有什么优点或缺点吗?
如果我使用核心 API 然后我决定更改我的消息传递总线(比如说 ActiveMQ)然后我必须更改我的所有代码,这是真的吗?
HornetQ Core API 是 HornetQ 的专有 API,而 JMS API 是 Java Community Process 定义的标准 API。
JMS API 不支持一些功能,可通过 core-api 获得:
在单个主题订阅上不可能有多个消费者(例如,如果您想拥有多个消费者以更好地扩展它)
关于如何创建订阅更通用。您只需在地址内创建一个队列。非常简单。
我们有一个很好的异步确认 API。如果您使用此功能,则无需阻止。
JMS 的优点是可移植性。如果您决定在提供商之间移动,您的代码将保持不变。
JMS 的缺点是它缺少一些特性,而且有点冗长,目前在 JMS 2 JSR 上正在工作。
如果您封装您的消息访问,您可以将其最小化,尽管您可以使用标准 OO 技术替换系统上的单个类。