我正在使用带有ActiveMQ
的Apache Camel来路由消息到队列。为了获得高可用性,我们可以在系统出现故障时配置MQ服务器集群。
ActiveMQ还提供failover
功能。现在我想将两组MQ服务器负载均衡到单个IP:TCP级别的端口。 Can Failover功能是否能够平衡两个MQ服务器?
e.g。 一个IP负载均衡。
192.168.0.1:61616 --> 192.168.1.1:61616,192.168.1.2:61616
答案 0 :(得分:2)
负载均衡可以通过"经纪人网络" ActiveMQ的功能,请参阅http://activemq.apache.org/networks-of-brokers.html。
答案 1 :(得分:1)
客户端故障转移uri用于恢复,而不是负载平衡。负载平衡消息传递客户端最终成为一个复杂的混乱(因为您无法预测消息大小)。
一个好方法是使用故障转移:(tcp:// ...)?randomize = false并通过更改uri中代理的顺序将生产者流量分成组。
Group1生产者:192.168.1.1:61616,192.168.1.2:61616 第2组生产者:192.168.1.2:61616,192.168.1.1:61616