ActiveMQ 5.x 到 Artemis 迁移方法

ActiveMQ 5.x to Artemis Migration Approach

我们正在计划从 5.x 迁移到最新版本(即 ActiveMQ Artemis),如果有人已经完成或使用 Camel 作为客户端应用程序,我们需要一些说明。

我们目前正在通过 Camel ActiveMQ 组件进行连接,我在 Camel 中没有看到任何 Artemis 组件。我们确实有其他组件,例如 JMS、SJMS、AMQP。关于连接到 Artemis 应该选择和推荐哪一个有什么想法吗?我想如果想放弃 OpenWire,我可以选择在新版本中使用 core、AMQP 协议。如果核心协议旨在用于从 JBoss 迁移的应用程序,那么与底层使用 AMQP 协议并符合 JMS 规范的 AMQP 组件一起使用是否合适?

没有像 ActiveMQ 5.x 那样专门针对 ActiveMQ Artemis 的 Camel 组件。但是,ActiveMQ Artemis 支持 ActiveMQ Camel 组件使用的 OpenWire 协议,因此您的客户端应用程序不一定需要更改。

如果您想要更改您的 Camel 应用程序,那么您可以将 JMS 或 SJMS Camel 组件与以下任何 JMS 客户端实现一起使用:

  • OpenWire JMS(ActiveMQ 5.x 附带)
  • 核心 JMS(ActiveMQ Artemis 附带)
  • Qpid JMS(使用 AMQP 的独立 JMS 客户端实现)

如果愿意,您也可以将 AMQP Camel 组件与 Qpid JMS 客户端一起使用。

您使用哪个组件完全取决于您的具体用例。您还没有真正提供有关您的用例的任何细节,因此不可能在那里提供指导。您需要评估每种方法的优缺点并自行决定。