RocketMQ事务如何避免单点问题

如题,

  • 一个RocketMQ事务包含两部分:消息投递和本地事务执行。

  • 如果本地事务执行成功了,在向Broker发送确认消息之前宕掉了,那么如何保证这个分布式事务的正确执行?

  • 按照RocketMQ的逻辑,如果出现此种情况,rocketmq会发送消息回查请求,可是此时该机器已宕机,无法对回查请求作出响应,那么如何判断事务成功还是失败了呢?

本质上RocketMQ的分布式事务还是采用的2PC协议,那么按理说也就绕不过单点问题。
或者说可以通过对同一事务作集群处理,总能找到一台未失效的机器?

还请大佬们解惑


开心每一天1111
浏览 429回答 1
1回答

饮歌长啸

反查逻辑写的好,就不会有问题;如果机器没了,反查也不好使,只能人工介入
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java