首页 文章

ActiveMQ - 多个代理配置的网络

提问于
浏览
4

我正在尝试在网络中设置三个代理以实现负载 balancer - 客户端和 生产环境 者可以连接到这些代理中的任何一个 .

问题:

  • 用于联网这些代理的推荐拓扑是什么?更具体地说,在每个这些代理上使用的networkConnector配置是什么?是否应启用双工设置? (我猜双工设置取决于我们选择的拓扑)

A-> B-> C-> A或A - B - C - A.

1 回答

  • 3

    1.)我实际上不能推荐拓扑 . 此选择取决于您可以接受的跳数(在消息进入集群的代理和消费者所在的代理之间) . 在升沉的流量场景中,每一跳都会增加网络负载 . 在我的公司,我们使用超立方体网络(每个经纪人都知道其他所有经纪人)并且效果很好 .

    通常,您应该确保您的节点配置尽可能相似 . 使用双工可确保配置的连接较少(因为从B到A的连接已经是从A到B的双工连接的一部分),但它会在配置文件中引入大量差异 .

    Personaly我为ActiveMQ创建了自己的启动脚本,它根据我的集群的dns名称(mycluster-01到06)自动生成连接配置 .

    2.)是的 . 如果要确保客户端使用列表中的第一个条目,您可能需要添加?randomize = false .

    3.)如果在消息传输期间出现故障或在重负载期间出现竞争条件,则可能发生重复条目 . 通常,一条消息仅由一个代理拥有 .

    4.)不要在主设备和从设备之间设置网络连接器(真的不要) . 使用activeMQ的纯主从功能并为每个从站配置主站(您不必在主站上配置任何内容) . 对于所有Masters将NetworkConnections配置为其他Masters并故障转移到其从属设备上)http://activemq.apache.org/pure-master-slave.html

相关问题