我希望我的ActiveMQ有两个活动的代理。
第一个是第一个,第二个在第一个不可用时执行。
如何在activemq.xml文件中定义这个代理?
我尝试通过复制并粘贴默认代理并更改端口和名称来添加代理,但在尝试运行activemq时会抛出异常。
此外,我如何知道哪个代理正在主动管理我的队列中的传入传出消息?
谢谢。
发布于 2013-01-29 18:40:15
您可以在客户端中使用JMS ://协议来实现这一点。有关如何配置故障切换协议的详细信息,请参阅Failover Transport Reference页。
这在ActiveMQ 3.x中是可靠的://协议,在高于3.x的ActiveMQ版本中是故障切换://
这是一个很好的article
发布于 2013-01-30 07:09:34
通过在客户端使用故障转移协议,当主代理不可用时,消息将被路由到从代理,但请确保randomize=false。
例如:故障切换:(tcp://主机:61616,tcp://从:61616)?randomize=false
当主代理失败并且消息仍在主代理的数据存储中等待时,要消费这些等待的消息,请将从代理和主代理配置到同一JDBC数据存储。
通过将主代理和从代理配置到同一JDBC数据存储,您的主代理将锁定JDBC数据存储,并且仅当主代理失败时,从代理才会激活,这将释放对数据存储的锁定。
在上述配置中,请确保主代理先于从代理启动。
https://stackoverflow.com/questions/14580550
复制相似问题