【发布时间】:2015-07-23 11:06:10
【问题描述】:
是否有一种标准设计模式可以让我按顺序使用队列中的消息,但又具有高可用性?
当然,我可以按帐号最后一位数将负载分成单独的队列(顺序仅对每个帐户很重要),这给了我可扩展性,但如果主机处理以“2”结尾的帐号失败,例如,我需要一些东西来承担这个负担。
我认为这种处理有一个标准模式。不幸的是,我无法使消息具有幂等性,因为队列源是由第三方集成造成的。
非常感谢任何想法。
【问题讨论】:
-
您能澄清一下“按顺序使用队列中的消息吗?”我看到了 2 种可能的解释:#consume 消息按源系统生成的顺序排列,同时保留全局顺序。 #consume 消息在单个帐户的上下文中的顺序。此外,您是否在消息中有序列信息,或者只是假设(单个?)源以某种顺序生成消息并且它们应该以相同的顺序到达。还有一个问题:如果消费者抛出错误会发生什么?队列应该停止还是继续?时机重要还是可以接受延迟。
标签: design-patterns high-availability architectural-patterns