比较简单的方法就是在你的发送语句外加个trycatch。记录发送的日志,然后从新发送。
大佬的意思是把发送的信息保存下来,然后重新发送之前保存的信息吗
@stephen_numb404: 是的。记下日志是考虑到网络抖动或者宕机,后续补偿发送不至于丢失数据。从新发送的话就是你上面说的网络问题,并不是服务本身完全宕机了。
@郭景伟Larva: 谢谢大佬
看看.....
线程内循环几次,保证发送成功。就是失败后多尝试几次。
如果是由于rocketMq的问题,比如网络抖动啥的,可能重试几次都失败呢
@stephen_numb404: 所有网络的程序都要面对这个问题。想办法保存信息,本地json文本等。或者就做一个数据表记录所有发送失败的记录,允许任何时候重发罗。
@生命体验之kevin-Y: 嗯,现在准备是准备一张表,把发送失败的mq消息存在表里,然后通过定时任务去轮询发送