2

原理描述

图片描述

生产者向broker发送一条未经commit不可消费的事务性消息(半消息)。如果发送成功返回SEND_OK,则执行本地事务,执行成功则commit,commit过的消息可正常被服务端消费。执行失败则rollback,rollback的消息则被删除。还有一种情况,就是broker没有收到确认消息,则会回查本地事务的状态,看是commit,还是rollback。

演示过程

请求http://localhost:8080/callback/transaction?text=888&param=1

正常被消费

clipboard.png


请求http://localhost:8080/callback/transaction?text=888&param=2

被回滚掉

clipboard.png


请求http://localhost:8080/callback/transaction?text=888&param=7

回查事务状态

clipboard.png

项目github地址

https://github.com/Nirvana010...


Nirvana
32 声望5 粉丝

整个体系复杂对我而言又陌生,每次学习对自己的脑力与知识体系都是一个巨大的挑战,也需要克服巨大的惰性;巨大的挑战同时也意味着巨大的诱惑。意味着我搞懂了,就能超越平凡的大多数,能力又上升了一个台阶。一...