【复盘】记录一次类型不一致导致的Kafka消费异常问题

背景

业务主要是通过A系统向B系统写入Kafka,然后B系统消费Kafka 将结果写到Kafka中,A进行消费最终结果。

在整个流程中,A写入Kafka会写入一张 record1表记录,然后在A消费最终结果的时候也记录一张record2表。主要改动的话 只是B系统内进行写入数据,但是没有想到用的同一个Map导致前后的一个变量值String类型转换成Integer类型。导致下游系统解析错误。由于上线后没有感觉会影响到这块,所以差不多3 4个小时后才发现,所以造成比较大的影响。

事故

补救措施:由于日志中有最终消费结果,所以从日志中拉取到最终的结果,然后在生产机器上进行重新推送这波数据。

总结

事前:对于需求 可能的难点 有问题的地方需要全方位的考虑清楚。最笨的方法就是一个案例一个案例过一遍整体的流程。

事中:上线后需要及时观察总体的数据,不能只看改动的地方,这样即使出现问题后,也可以在短时间内找到问题,然后解决,将故障时间缩小到最小范围。

事后:出现问题后,需要及时复盘,影响已经造成 可以从中吸取到一定的教训。

相关推荐
Amy187021118233 小时前
赋能低压分布式光伏“四可”建设,筑牢电网安全新防线
分布式
June bug7 小时前
【软考中级·软件评测师】下午题·面向对象测试之架构考点全析:分层、分布式、微内核与事件驱动
经验分享·分布式·职场和发展·架构·学习方法·测试·软考
阿波罗.20128 小时前
Zookeeper 客户端 .net访问框架 ZookeeperNetEx项目开发编译
分布式·zookeeper
Bug退退退1239 小时前
RabbitMQ 工作模式
java·分布式·rabbitmq
weixin_438335409 小时前
分布式锁实现方式:基于Redis的分布式锁实现(Spring Boot + Redis)
数据库·redis·分布式
危险、14 小时前
RabbitMQ 通过HTTP API删除队列命令
分布式·http·rabbitmq
周某某~14 小时前
windows安装RabbitMQ
分布式·rabbitmq
Bug退退退12314 小时前
RabbitMQ 高级特性之消息确认
java·分布式·rabbitmq
一只程序汪17 小时前
【如何实现分布式压测中间件】
分布式·中间件
William一直在路上18 小时前
主流分布式中间件及其选型
分布式·中间件