分布式事务方案:最大努力通知方案

       最大努力通知方案主要也是借助MQ消息系统来进行事务控制,这一点与可靠消息最终一致方案一样。看来MQ中间件确实在一个分布式系统架构中,扮演者重要的角色。最大努力通知方案是比较简单的分布式事务方案,它本质上就是通过定期校对,实现数据一致性。


       一.最大努力通知方案的实现

       1.业务活动的主动方,在完成业务处理之后,向业务活动的被动方发送消息,允许消息丢失。
       2.主动方可以设置时间阶梯型通知规则,在通知失败后按规则重复通知,直到通知N次后不再通知。
       3.主动方提供校对查询接口给被动方按需校对查询,用于恢复丢失的业务消息。
       4.业务活动的被动方如果正常接收了数据,就正常返回响应,并结束事务。
       5.如果被动方没有正常接收,根据定时策略,向业务活动主动方查询,恢复丢失的业务消息。


        二.最大努力通知方案的特点

       1.用到的服务模式:可查询操作、幂等操作。

       2.被动方的处理结果不影响主动方的处理结果;

       2.适用于对业务最终一致性的时间敏感度低的系统;

       3.适合跨企业的系统间的操作,或者企业内部比较独立的系统间的操作,比如银行通知、商户通知等;


        三.最大努力通知方案的设计

        相比于可靠消息最终一致方案,最大努力通知方案设计上比较简单,主要是由两部分构成。

        1.实时消息服务(MQ):接收主动方发送的MQ消息。

        2.通知服务子系统:监听MQ消息,当收到消息后,向被动方发送通知(一般是URL方式),同时生成通知记录。如果没有接收到被动方的返回消息,就根据通知记录进行重复通知。


       最大努力通知方案实现方式比较简单,本质上就是通过定期校对,适用于数据一致性时间要求不太高的场合,其实不把它看作是分布式事务方案,只认为是一种跨平台的数据处理方案也是可以的。


  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值