分布式消息服务KAFKA版-为什么Kafka实例常常发生Rebalance(重平衡),导致消息拉取失败?:解决方法/排查思路
解决方法/排查思路
场景一:未能及时发送心跳请求
排查思路:如果是Java语言客户端,建议排查GC日志是否存在长时间FullGC的情况。该场景可能会导致心跳线程阻塞,服务端检查心跳失败,进入Rebalance状态。
解决方法:如果存在长时间FullGC的情况,需要您排查客户端相关问题(FullGC可能是客户端存在内存泄露)。
场景二:消费者消费时间间隔过长
排查思路:
- 检查单条消息的处理时间是多久,处理max.poll.records条消息会不会超过max.poll.interval.ms时间。
- 消息处理流程是否有网络行为,如写数据库、调用后端API等,在发生Rebalance的场景下消费者下游系统是否正常。
解决方法:建议在消费者客户端将max.poll.records值减小,如果消息处理时间较长可以适当增加max.poll.interval.ms。
- kafka是什么_kafka介绍_分布式消息服务Kafka版
- 分布式消息服务Kafka版与分布式消息服务RocketMQ版的区别_Kafka与RocketMQ对比_Kafka与RocketMQ差异
- 分布式消息服务有哪些_分布式消息服务哪个好_分布式消息-华为云
- 分布式消息中间件的作用_分布式消息中间件_分布式消息-华为云
- 分布式消息服务优势_分布式消息服务_消息队列-华为云
- 分布式消息中间件实战_分布式消息实战_分布式消息-华为云
- 分布式消息系统Kafka_分布式消息系统_分布式消息kafka可以解决什么问题-华为云
- Kafka与其他消息队列的对比_什么是Kafka_分布式消息系统-华为云
- Kafka架构_Kafka如何实现负载均衡_Kafka数据存储方式-华为云
- RocketMQ是什么_RocketMQ介绍_分布式消息服务RocketMQ版