简易快速容易实现的做法:
1、开启生产者重试机制;
2、启用生产者发送消息后确认机制(ConfirmCallback)
理论上更可靠方案(一般不那么搞):
- 把消息数据写入数据库,用状态码来控制消息发送状态。
- 开启定时任务,间隔3秒,查询未发送的消息。
- 调用消息生产者,发送消息到MQ中间件。
- 消息生产者,设置confirmCallback确认回调对象,判断ack
-- true: 消息发送成功,修改消息发送状态为: 已发送。
-- false: 消息发送失败。定时任务重发
简易快速容易实现的做法:
1、开启生产者重试机制;
2、启用生产者发送消息后确认机制(ConfirmCallback)
理论上更可靠方案(一般不那么搞):