我有一个Red Hat AMQ(基于ActiveMQ Artemis)代理程序,我想使用持久订阅(或等效的)功能,这样我将有多个OpenWire JMS订户订阅我们的应用程序的事件,这些事件将可靠地传递给他们。
我想预先配置订户,这样可以节省我在应用程序初始启动时的麻烦。我想避免在持久订户执行其初始订阅之前,在主应用程序开始运行和发布事件的初始应用程序启动的情况。
我还希望避免显式地对流程的启动序列排序。
有什么方法可以预先配置持久订户吗?在普通的ActiveMQ(而不是Artemis)中,有类似虚拟主题的特性可以解决这个问题。
ActiveMQ Artemis的首选解决方案是什么?
由于OpenWire实现以确定的方式(即使用 client-id . subscription-name )例如,如果要在地址上配置持久订阅 myAddress 客户端ID为的 myclientid 以及订阅名称 mysubscription 然后配置持久订阅:
client-id
subscription-name
myAddress
myclientid
mysubscription
<addresses> <address name="myAddress"> <multicast> <queue name="myclientid.mysubscription"/> </multicast> </address> </addresses>