消息中间件面临的两个主要问题

消息中间件面对的两个主要问题

分布式消息系统作为实现分布式系统可扩展,可伸缩性的关键组件,需要具有高吞吐量,高可用性等特点,谈到消息系统的设计,就回避不了两个问题:

消息的顺序问题
消息的重复问题

消息的顺序问题解决:

如果M1被发送到消费端后。消费端1没有响应,那是继续发送M2?为了保证保证消息一定会被消费,肯定是选择重发M1到另外一个消费端2,那么如果M1已经被消费过,如何避免消息被重复消费

消息的重复消费问题

1、消费端处理消息的业务逻辑保持幂等性

2、保证每条消息都有唯一的编码,且保证消息处理成功 与 去重表的日志 同时出现

利用一张日志表来记录已经处理成功的消息的ID,如果新到达的消息ID已经在日志表中,那么就不再处理这条消息

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容