1、rockectmq实现思路
-1发送mq half消息(等待发送queue)
-2发送成功则本地开启事务,成功发送mq通知half消息发送queue,失败通知half消息删除
-3发送通知失败,half消息超时回查事务状态,判断事务是否成功,重复上一步骤
-4消费端开启确认消费机制,以及生产者添加回调接口接收消费通知
2、rabbitmq实现思路
-1开启本地事务
-2事务成功则发送消息给mq,开启确认机制,发送失败则回滚事务(可设置重试)
-3消费端开启确认消费机制,以及生产者添加回调接口接收消费通知
两种实现方式对比:rocketmq方式需要实现事务回查机制,而rabbitmq方式则相对简单