跨 ActiveMQ 代理网络的负载平衡客户端连接
Load balance client connections across network of ActiveMQ brokers
我在具有两个节点的 ActiveMQ 中设置了代理网络。一切正常,除了连接到一个代理的所有客户端和第二个代理没有任何连接。我启用了 updateClusterClients
和 rebalanceClusterClients
。我认为启用这些选项将允许客户重新平衡自己。
环境细节
- Python 3.7
- Stomp 协议
- ActiveMQ 5.15.8
- 使用 stomp+ssl 传输连接器
带有故障转移传输的示例代码:
conn = stomp.Connection11([(localhost,61613),(remotehost,61613)], heartbeats=
(10000,20000),encoding="utf-8",heart_beat_receive_scale=2.0)
conn.start()
updateClusterClients
和 rebalanceClusterClients
设置仅适用于 OpenWire 客户端。 STOMP 是一个非常简单的协议(顾名思义)。代理没有标准的方式来通知 STOMP 客户端关于集群拓扑更新或告诉它连接到不同的代理。它只是不是规范的一部分。您需要手动平衡您的客户端或者使用外部负载平衡器。
我在具有两个节点的 ActiveMQ 中设置了代理网络。一切正常,除了连接到一个代理的所有客户端和第二个代理没有任何连接。我启用了 updateClusterClients
和 rebalanceClusterClients
。我认为启用这些选项将允许客户重新平衡自己。
环境细节
- Python 3.7
- Stomp 协议
- ActiveMQ 5.15.8
- 使用 stomp+ssl 传输连接器
带有故障转移传输的示例代码:
conn = stomp.Connection11([(localhost,61613),(remotehost,61613)], heartbeats=
(10000,20000),encoding="utf-8",heart_beat_receive_scale=2.0)
conn.start()
updateClusterClients
和 rebalanceClusterClients
设置仅适用于 OpenWire 客户端。 STOMP 是一个非常简单的协议(顾名思义)。代理没有标准的方式来通知 STOMP 客户端关于集群拓扑更新或告诉它连接到不同的代理。它只是不是规范的一部分。您需要手动平衡您的客户端或者使用外部负载平衡器。