我有2台服务器server1和server2。 server1是主服务器,server2是从服务器。 两者都在集群环境中运行。
如果具有相同组ID的2条消息同时到达节点1和节点2,则它们将不知道应将消息发送给哪个使用者。因此,该消息最终将由不同的使用者处理,并且有时先到达的消息随后会被处理,这是不希望的。
我想对系统进行配置,以使两个节点彼此知道该消息应由哪个使用者处理。
我尝试过的解决方案: 为服务器1配置了组处理程序LOCAL,并为服务器2配置了REMOTE。 现在,每当消息到达时,LOCAL组处理程序就会标识使用者在哪个节点上,并相应地选择消息。
该解决方案在server1运行正常之前一直有效。但是,如果server1发生故障,将不再处理消息。
为解决此问题,我将备份服务器添加到server1到server2的消息传递子系统活动mq中,并且类似地对server2执行了同样的操作。
/ profile = garima / subsystem = messaging-activemq / server = backup:add
并向该备份服务器添加了相同的群集连接,发现组,http连接器,广播组,但是当我尝试使用此解决方案时,似乎无法解决故障转移条件,并且未在其他节点上处理消息。 / p>
请建议其他方法,或者如何配置带有LOCAL组处理程序的服务器停止的方案。