use*_*049 3 java activemq-classic jms subscriber publish-subscribe
如何在activemq.xml中创建/预配置持久订阅者,以便在ActiveMQ出现时准备好这些订阅?好像订阅者处于脱机状态.
我们期待固定(但可配置)数量的已知订户.想要缓冲发布者从第1天开始发送的所有消息,以防所有订阅者都未启动.不确定这是否是常见情况,但提前感谢您的帮助.
这是一个非常常见的用例.你应该看到的是复合目的地,而不是持久的主题(这个功能有很多问题,主要的是默认情况下没有持久的消息,因此没有幸存的经纪人中断).
使用此方案,您可以设置一个复合主题,将每条消息转发到多个队列 - 每个用户专用一个队列.
<destinationInterceptors>
<virtualDestinationInterceptor>
<virtualDestinations>
<compositeTopic name="orders">
<forwardTo>
<queue physicalName="orders.consumer1" />
<queue physicalName="orders.consumer2" />
</forwardTo>
</compositeTopic>
</virtualDestinations>
</virtualDestinationInterceptor>
</destinationInterceptors>
Run Code Online (Sandbox Code Playgroud)
这样,当您的订户最终连接到自己的队列时,它会消耗送入其中的消息.
需要注意的是,确保您的内存限制足以处理存储在这些队列中的消息,或者您的代理似乎挂起(称为生产者流控制的代理函数).
我看到你是一个新用户,所以如果这回答了你的问题,请勾选它.
| 归档时间: |
|
| 查看次数: |
3422 次 |
| 最近记录: |