- Kafka消息丢失场景:
- --Kafka的leader副本挂了,但是数据还没同步到其他的follower副本,然后重新选举leader后,就造成Kafka数据丢失了.
- Kafka消息丢失解决方案:
- --设置四个参数:
- -第一个:给topic设置replication.factor参数大于1,要求每个partition必须最少有两个副本.
- 第二个:在Kafka客户端min.insync.replicas参数大于1,要求每个leader最少感知到有一个follower还与自己保持联系,没有掉队.
- 第三个:在producer端设置acks=all,要求每条数据写入replica后,才认为写入成功.
- 第四个在producer端设置retries=MAX,写入失败,无限重试.
- 配置这四个参数后,在Kafka broker端就可以保障leader所在broker发生故障时,进行leader切换,保证数据安全.
- --设置四个参数:
- 生产者消息丢失场景:
- 生产者消息丢失解决方案:
- -在设置Kafka消息丢失解决方案中的四个参数后,就不会存在生产者消息丢失问题,acks=all要求leader接收到消息,同步到所有follower后,才会认为本次消息发送成功.
- 消费者丢失数据场景:
- -消费者接收到消息,消费者自动提交了offset,此时消费者还没处理完数据,挂了,就造成了消费者消息丢失.
- 消费者丢失数据解决方案:
- -关闭自动offset,当消费者处理完数据后手动提交offset.
Kafka消息丢失
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 一、Kafka中的消息是否会丢失和重复消费 要确定Kafka的消息是否丢失或重复,从两个方面分析入手:消息发送和消...