在CentOS上配置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
// 在嘗試重試對給定主題分區的失敗請求之前等待的時間。磁盤寫滿,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
# 增加副本同步超時時間。這些常見問題及其解決方案可以幫助你在配置和維護Kafka時避免一些常見的陷阱。