采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师您好,在事务那一节,check回调函数怎么能知道事务是否执行成功呢?我想到的就是在本地做个记录:基于消息id和事务是否成功,请问下老师怎么解决呢?
流程是先同步发消息到mq,然后执行本地事务,执行完毕后再次提交给mq,如果最后没发送到mq确认消息则,mq会主动回查check接口,你当然要把你之前执行本地事务的业务ID发送给mq,回查的时候也要带上,然后通过唯一业务ID查找对应的库表里是否存在该条记录或者是数据内容是否符合预期,如果符合则再次发送确认消息给mq,不符合则提交回滚消息给mq即可
登录后可查看更多问答,登录/注册
理论+实战,系统掌握RocketMQ核心技术, 挑战高并发抗压实战
10.1k 15
1.2k 11
1.1k 7
1.1k 6