问个分布式事务的问题

查看 26|回复 0
作者:7911364440   
业务流程大概是这样,从 RocketMQ 消费消息,将收到的数据转发给多个数据源(可能是 MySQL 、Oracle 、Kafka 等)。
问题是如何保证一条消息最终成功发送给所有客户端?假设写 MySQL 成功了,发送 Kafka 时失败了,要怎么重发
目前想到的方案:
[ol]
  • 将发送失败的消息保存到本地数据库,同时记录目标客户端,再通过定时任务重发。
  • 跟 1 类似,将失败的消息发送到消息队列中的某个特定的 topic ,客户端消费这个 topic 实现重发。
    [/ol]
  • 您需要登录后才可以回帖 登录 | 立即注册

    返回顶部