1
回答
消息处理如何善始善终而且避免单点故障?
华为云数据库免费试用   

在做一个基于amq的代理服务程序,主要功能是收听消息中间件的的消息,然后进行处理。

为了避免单点故障,代理服务程序被设计成分布式的,每个消息只能被处理一次,简单做法就是最初源头的消息是队列而不是广播,显然广播不满足只处理一次的需求。

但是基于队列还存在一个问题,因为消息是有批次和顺序的,我希望某个代理服务程序收到某个批次的第一个消息后,则该批次的消息都由它执行(谁先接手,谁就要负责到底,因为多个代理程序都处理一个批次的消息,会产生执行顺序的问题),不能再由其它代理服务程序来处理(貌似又产生单点问题),基于我目前对AMQ的理解,这个似乎不容易做到。

不知道AMQ能不能实现上述的诉求?

或者是否ZOOKEEPER能满足这样的要求?

不知道说明白了没有?多少年没发帖了。


举报
panhan
发帖于2年前 1回/209阅
顶部