请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师,关于消息最终一致性保证事务一致性的问题

课程中的时序图的A系统的发送提交信息并不是真的说,A系统已经提交了,发送信息吧,意思是不是在A系统执行commit之前,发送一个消息,因为课程里面说通过线程挂起的方式,其实应该不用吧,只要在commit操作之前,发送消息,然后B系统返回消息,A系统监听消息,根据这个消息判断是提交还是回滚,这已经是串行的方式执行,不需要通过让线程挂起的方式。

我画了一个时序图,老师帮我看下有没有问题

还有一个问题就是,我的理解是一旦能够通知到B系统,那么B系统执行完事务就直接提交,因为只要能到通知B系统这一步,那么A是肯定能够成功的,A肯定是处于待提交的状态。我的问题是:B系统这里是不是直接提交,对表作持久化了?

https://img1.sycdn.imooc.com//szimg/5cbbe7ab0001c85b09160959.jpg

正在回答

1回答

大致理解没问题, 不过既然已经有MQ了, ZK其实就不需要了。  一致性消息事务阻塞是一种解决方案。如果觉得对比较影响性能, 可以考虑用状态解决

0 回复 有任何疑惑可以回复我~
  • 提问者 yejiajiajia #1
    嗯,OK,有什么不懂我再问~
    回复 有任何疑惑可以回复我~ 2019-04-21 18:51:27
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信