1.最简单的设计
一般来讲,设计消息队列的整体思路是先build一个整体的数据流,
例如producer发送给broker,broker发送给consumer,consumer回复消费确认,broker删除/备份消息等。
2.如何承载消息堆积
之后考虑如何承载消息堆积,然后在合适的时机投递消息,而处理堆积的最佳方式,就是存储,存储的选型需要综合考虑性能/可靠性和开发维护成本等诸多因素。
3.保存消费关系
为了实现广播功能,我们必须要维护消费关系,可以利用zk/config server等保存消费关系。