请稍等 ...
×

采纳答案成功!

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

如何实现分布式事务,面试官说方案太low了

如何实现分布式事务,我回答了老师课堂上提供的方案,面试官说这个有点low,我个人觉得简单实用。不太理解面试官的意思,面试官是一线大厂的大牛,应该不是为了装,可能确实这么认为。老师的话生产上有没有更好的方法实现分布式事务?


我能找到不少网络方案,但不知道哪个生厂上真正用到了,那些停留在理论上?老师能否给写关键字我去研究下,最好是生厂上确实是这么搞得。感谢



正在回答 回答被采纳积分+3

1回答

大目 2020-11-01 15:35:31

你应该问问他low在哪里。这个方案是有很多企业用的。

我估计他是想你聊聊两阶段,三阶段提交,或者是聊聊一些分布式事务中间件,比如seata什么的。

面试时搞清楚面试官的意图很重要的,并不单纯是做问答题哈。你可以反问对方的,就说是对技术有热情,虚心请教,希望一起探讨。
一般来说面试官都会乐于告诉你他希望你回答的内容是什么,如果他自己都说不清楚那就不用往心里去吧。

1 回复 有任何疑惑可以回复我~
  • 提问者 matthew21 #1
    老师好,也可能是我表达的不够。岗位是技术专家所以期待会高一些,让我详细描述下实现的过程。我刚好看完这节课,我描述了下实现的过程,对方听完后觉得通过数据库表记录状态的方式效率不高。 我问过对方是否是想听到二阶段提交的方案,对方提到了“事务消息”,这里有个问题:老师课堂里讲的是事务消息吗,事务消息是否需要了解更深层的东西。请老师给一些方向,我去研究一下,感谢
    回复 有任何疑惑可以回复我~ 2020-11-04 23:52:16
  • 大目 回复 提问者 matthew21 #2
    哥,这个就是事务消息。
    数据库记录的是本地事务的状态,而且课上我说了,课上是不想引入额外的组件,所以用的数据表标记本地事务状态,实际项目中,可以在本地事务完结后,记录到Redis。
    
    此外,有关分布式事务,我建议你研究下Seata,一个专门搞分布式事务的框架,了解下它的AT/TCC/SAGA/XA模式。
    回复 有任何疑惑可以回复我~ 2020-11-05 23:49:57
  • 提问者 matthew21 回复 大目 #3
    感谢指点,确认最后一个问题,这个方案是能承载高并发的方案吗,我最近看了很多方案,但缺乏生产验证。目前比较好的方式rocketmq事务消息和seata
    回复 有任何疑惑可以回复我~ 2020-11-07 21:43:15

相似问题

登录后可查看更多问答,登录/注册

问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信