看啥推荐读物
专栏名称: 51CTO技术栈
有趣 | 有料 | 有内涵,为您提供最优质的内容,愿我们一起悦享技术,成就人生。
今天看啥  ›  专栏  ›  51CTO技术栈

在线等,Kafka如果丢了消息怎么办?

51CTO技术栈  · 公众号  · 程序员  · 2021-02-23 18:05
“ Kafka 存在丢消息的问题,消息丢失会发生在 Broker,Producer 和 Consumer 三种。图片来自 PexelsBrokerBroker 丢失消息是由于 Kafka 本身的原因造成的,Kafka 为了得到更高的性能和吞吐量,将数据异步批量的存储在磁盘中。消息的刷盘过程,为了提高性能,减少刷盘次数,Kafka 采用了批量刷盘的做法。即,按照一定的消息量,和时间间隔进行刷盘。这种机制也是由于 Linux 操作系统决定的。将数据存储到 Linux 操作系统种,会先存储到页缓存(Page cache)中,按照时间或者其他条件进行刷盘(从 Page Cache 到 file),或者通过 fsync 命令强制刷盘。数据在Page Cache中时,如果系统挂掉,数据会丢失。Broker 在 Linux 服务器上高速读写以及同步到 Replica上图简述了 Broker 写数据以及同步的一个 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照