gpt4 book ai didi

ActiveMQ - 多个代理网络配置

转载 作者:行者123 更新时间:2023-12-01 02:46:18 25 4
gpt4 key购买 nike

我正在尝试在网络中设置三个代理以进行负载平衡——客户端和生产者可以连接到这些代理中的任何一个。

问题:

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

    A->B->C->A    或    A<-->B<-->C<-->A
  • 客户端应该使用故障转移协议(protocol)连接到这些代理,对吗?例如故障转移://(tcp://b1:6161, tcp://b2:6161, tcp://b3:6161)
  • 在重新启动的情况下,客户端需要进行任何重复的消息处理吗?见 http://forum.springsource.org/showthread.php?108461-Failover-issue-in-ActiveMQ -- 不清楚为什么这里存在重复消息问题
  • 理想情况下,我们希望设置拓扑,如本文 http://edelsonmedia.com/?p=143 所示。 -- 不清楚如何在 master 和 slave 上设置 networkConnector。
  • 最佳答案

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

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

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

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

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

    4.) 不要在主机和从机之间设置网络连接器(真的不要)。使用activeMQ的纯主从特性,为每个从属配置主从(你不必在主控上配置任何东西)。对于所有 Master 配置 NetworkConnections 到其他 Master 并故障转移到他们的从属)
    http://activemq.apache.org/pure-master-slave.html

    关于ActiveMQ - 多个代理网络配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6801141/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com