大家好,我是田螺。
分享一道京东的场景面试题:如何应用RocketMQ事务信息成功散布式事务?比如下单清空购物车场景。
咱们如何更好回答这个疑问呢?可以依照以下这几个维度:
散布式事务是指在多个独立的系统或数据库之间口头的事务操作,它确保一切介入者要么所有成功提交,要么所有回滚,以维持数据分歧性。
通常保证散布式事务的打算有:信息队列的事务信息、TCC(Try-Confirm-Cancel)形式、Seata、二阶段提交等。
咱们先来看看:RocketMQ的一条个别的信息,从发生到被消费,教训的流程:
其实,在RocketMQ中,消费完信息后,信息不会立刻被删除,而是依据信息的过时期间和消费进展启动治理。消费者确认消费后,RocketMQ会记载该信息的消费形态,并在到达设定的过时期间后,从存储中删除该信息。这种机制确保了信息的牢靠性和耐久性。
在开局之前,咱们先来了解一下,什么是半信息?
这个半信息,它不是说信息内容不完整,它蕴含的内容就是完整的信息内容。它跟个别信息的惟一区别是,在事务提交之前,关于消费者来说,这个信息是无法见的。
咱们看下,下订单清空购物车的例子吧。订单系统创立完订单后,而后发信息给下游系统的购物车系统,清空购物车。
本网站的文章部分内容可能来源于网络和网友发布,仅供大家学习与参考,如有侵权,请联系站长进行删除处理,不代表本网站立场,转载联系作者并注明出处:https://duobeib.com/diannaowangluoweixiu/8590.html