美文网首页
rocketmq的事务消息

rocketmq的事务消息

作者: 陈宏斌9527 | 来源:发表于2020-01-15 14:23 被阅读0次
    image.png

    1 发送半消息
    2 mq server 发送半消息成功给发送方
    3 发送方收到后,执行本地事务
    4 发送方主动提交事务状态,成功or 失败
    5 如果成功,mq server 投递到下游,执行下游事务。
    6 如果失败,mq server 删除消息
    7 如果迟迟没有收到发送方提交事务状态,mq server 会主动去发送方查询,该逻辑需要发送方实现。
    8 检查本地事务。根据成功or失败,选择走第5步还是第6步。

    补充:
    1 如果下游事务失败,需要重试,并有报警人工介入的机制。
    2 第7步mq server 会不断的回查直到超时或者次数上限。
    3 回查的时候,本地事务有3种状态,commit rollback unkown
    4 回查的逻辑就是看本地事务提交的数据在不在,如果不在不能认为是失败了
    要返回unkown

    优点:稳定可靠,毕竟是经历过双11的
    缺点:有侵入性,需要业务实现者多写一个确认事务状态的方法

    相关文章

      网友评论

          本文标题:rocketmq的事务消息

          本文链接:https://www.haomeiwen.com/subject/wdstzctx.html