分布式事务学习-消息发送一致性分析(五)
2017-12-28 18:22
441 查看
消息发送一致性
消息发送一致性:是指产生消息的业务动作与消息发送的一致。(也就是说,如果业务操作成功,那么由这个业务操作所产生的消息一定要成功投递出去,否则就丢消息)
消息发送一致性的正向分析
![](https://oscdn.geek-share.com/Uploads/Images/Content/201911/10/95570bd5de6202355e97e43bb70433a9)
消息发送一致性的异常情况分析
![](https://oscdn.geek-share.com/Uploads/Images/Content/201911/10/85eca55a0153e82d0a43beef9dd0dc87)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201911/10/fec0df3c480cb4b4b69a77876ec79269)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201911/10/9fa4b92b375ef9f49b5b1bd3f6b91767)
MQ队列消息的生产与消费常规流程
![](https://oscdn.geek-share.com/Uploads/Images/Content/201911/10/21a9d447083afc373e3184cafc4db91f)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201911/10/49d9c8b4044106a3fb03d38fbfffd5d0)
常规MQ队列消息的处理流程无法实现消息发送一致性,因此直接使用现成的MQ中间件产品无法实现可靠消息最终一致性的分布式事务解决方案
消息重复发送问题
消息重复发送的原因
![](https://oscdn.geek-share.com/Uploads/Images/Content/201911/10/27b8a4dd75636b5ab990e23bbbc99e0d)
业务接口的幂等性设计
约束:被动方应用对于消息的业务处理要实现幂等。
对于存在同一请求数据会发生重复调用的业务接口,接口的业务逻辑要实现幂等性设计。
消息重发也得有次数限制,要不然就变成了死循环。
对于超过重发次限制的消息,进入DLQ,等待人工干预或延后定期处理。
消息发送一致性:是指产生消息的业务动作与消息发送的一致。(也就是说,如果业务操作成功,那么由这个业务操作所产生的消息一定要成功投递出去,否则就丢消息)
消息发送一致性的正向分析
消息发送一致性的异常情况分析
MQ队列消息的生产与消费常规流程
常规MQ队列消息的处理流程无法实现消息发送一致性,因此直接使用现成的MQ中间件产品无法实现可靠消息最终一致性的分布式事务解决方案
消息重复发送问题
消息重复发送的原因
业务接口的幂等性设计
约束:被动方应用对于消息的业务处理要实现幂等。
对于存在同一请求数据会发生重复调用的业务接口,接口的业务逻辑要实现幂等性设计。
消息重发也得有次数限制,要不然就变成了死循环。
对于超过重发次限制的消息,进入DLQ,等待人工干预或延后定期处理。
相关文章推荐
- 分布式事务解决方案之消息发送一致性(可靠消息的前提保障)
- 微信公号“架构师之路”学习笔记(六)-互联网一致性架构设计(session一致性,主从一致性,双主一致性,缓存一致性,冗余一致性,消息时序一致性,分布式事务一致性,数据扣减一致性等)
- 消息中间件(一)分布式系统事务一致性解决方案大对比,谁最好使?
- (微服务)分布式事务-最大努力交付 && 消息最终一致性方案
- 分布式缓存技术redis学习系列(五)——spring-data-redis与JedisPool的区别、使用ShardedJedisPool与spring集成的实现及一致性哈希分析
- 分布式事物学习之(可靠消息一致性方案之本地消息服务)(六)
- 分布式事务解决方案之消息最终一致性(可靠消息服务)下篇
- 分布式事务八_可靠消息最终一致性方案
- 分布式事务解决方案一之:可靠消息最终一致性
- 分布式事务九_基于可靠消息的最终一致性代码
- 分布式消息最终一致性事务
- 消息中间件(一)分布式系统事务一致性解决方案大对比,谁最好使?
- 分布式事务五_基于可靠消息的最终一致性_异常流程
- 分布式缓存技术redis学习系列(五)——spring-data-redis与JedisPool的区别、使用ShardedJedisPool与spring集成的实现及一致性哈希分析
- 分布式消息最终一致性事务
- 分布式事务:不过是在一致性、吞吐量和复杂度之间,做一个选择 分布式系统 消息系统
- 如何选择分布式事务形态(TCC,SAGA,2PC,基于消息最终一致性等等)
- 分布式事物学习之(可靠消息一致性方案之独立消息服务)(七)
- 分布式事务解决方案之消息最终一致性(可靠消息服务)上篇