处理流程图:

Redis缓存结构为map

Key为常量

field为kafka的message_id

value为kafka消息体

1.处理kafka消息队列send方法,通过callback异步回调方法判断消息是否发送成功

2.发送成功生产日志记录,发送失败则把发送失败消息体写入Redis缓存中,同时发送告警易信消息

3.在分布式定时任务中新增一个定时任务来处理消费失败的kafka消息,定时任务间隔是设置1分钟

4.定时任务读取Redis缓存中的失败消息,再次调用kafka发送send接口,发送成功则删除Redis缓存中的失败消息,发送失败则保持不变

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注