在Linux上配置Kafka时,可能会遇到多种问题。以下是一些常见问题及其解决方案:
消息堆积
./kafka-topics.sh --alter --topic 订单日志 --partitions 6 --bootstrap-server localhost:9092。数据丢失
acks=all # 确保所有ISR副本确认后才返回成功。retries=3 # 自动重试。min.insync.replicas=2 # 至少2个副本确认才允许写入。消费者重复消费
consumer.commitSync(); // 处理完消息后同步提交。auto.commit.interval.ms=1000 // 1秒提交一次。Leader切换导致短暂不可用
retries=5,retry.backoff.ms=1000 // 在尝试重试对给定主题分区的失败请求之前等待的时间。buffer.memory),避免消息丢失。磁盘写满,Broker罢工
./kafka-delete-records.sh --bootstrap-server localhost:9092 --offset-json-file cleanup.json。log.retention.hours=72 # 缩短保留时间。log.retention.bytes=1073741824 # 每个分区最多保留1GB。ZooKeeper连接闪断,集群抖动
zookeeper.session.timeout.ms=18000 # 增加会话超时时间。消费者组重平衡太频繁
session.timeout.ms=30000 # 心跳超时时间调大。max.poll.interval.ms=300000 # 拉取消息间隔上限调大。跨机房同步延迟高
broker.rack=us-east-1a # 标记Broker所在机房。replica.socket.timeout.ms=120000 # 增加副本同步超时时间。