美文网首页
消息可靠性

消息可靠性

作者: 快点给我想个名 | 来源:发表于2019-06-27 22:19 被阅读0次
    消息的可靠性投递
    • 消息入库,对消息状态进行打标记


      image.png

      1.业务操作入库,然后生成消息保存到数据库,状态为0
      2.发送端将消息发送到MQ
      3.MQ返回一个应答(发送端有一个监听程序)
      4.将指定消息更新状态为1
      5.定时取出状态为0的消息
      6.调用发送端重新发送消息
      7.限制重试次数,大于3次,将消息状态设置为2既重试失败

    • 消息延迟投递,进行二次确认,回调检查
      第一种方式不适合在高并发场景下


      image.png

      1.业务入库,然后发送消息到MQ
      2.发送延迟检查消息
      3.消费端监听指定消息并消费
      4.消费端处理完消息,返回一条消息进行响应
      5.Callback Service监听消费端的响应,收到后将消息持久化到数据库
      6.Callback Service同时监听延迟检查消息。收到延迟检查消息后将数据库中对应的消息进行状态变更
      7.Callback Service定时检查数据库中状态没有变更的消息。之后发送ReSend Command给发送端。

    相关文章

      网友评论

          本文标题:消息可靠性

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