![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Kafka
搬砖党弟中弟
搬砖党弟中弟!
展开
-
Kafka之ack机制
前言之前的博客里说了,Kafka的消息同步是一种ISR机制,本质上是“完全同步”的一种优化。都在说,消息被ISR中所有副本都写入才算写入成功。但是这样未免定的太死板了,所以,Kafka给出了我们选择。这个选择就是ack机制生产者参数request.required.acks 是producer可以指定的参数ack = 1 (默认)leader写入成功,producer就能收到成功响应(这和同步不同步没关系,你就当只有leader,没有follower就行)ack = 0.原创 2020-11-06 16:17:21 · 1263 阅读 · 0 评论 -
Kafka可靠性之HW与Leader Epoch
《深入理解Kafka:核心设计与实现原理》是基于2.0.0版本的书在这本书中,终于看懂了笔者之前提过的几个问题准备知识1、leader里存着4个数据:leader_LEO、leader_HW、remote_LEO集合、remote_HW集合2、follower里只保存自身的:follower_LEO、follower_HWHW和LEO更新过程假设:1个leader 和 2个follower此时:leader_LEO = 5、leader_HW = 0、所有follower.原创 2020-11-06 15:45:50 · 1632 阅读 · 1 评论 -
Kafka之ISR机制的理解
问题1:Kafka对于producer发来的数据的怎么保证可靠性?每个partition都给配上副本,保证数据不丢失。副本数据同步策略和zookeeper不同的是,Kafka选择的是全部完成同步,才发送ack。但是又有所区别。所以,你们才会在各种博客看到这句话【kafka不是完全同步,也不是完全异步,是一种ISR机制】这句话对也不对,不对也对(谜语人......)首先笔者认为:Kafka使用的是完全同步方案完全同步的优点同样为了容忍 n 台节点的故障,过半机制需要 2n+1原创 2020-11-03 17:40:08 · 20855 阅读 · 17 评论 -
Kafka需要知道的一些基础知识点
broker:一个broker代表了一个kafka实例topic 主题: 对消息进行分类partition 分区:同一个主题的所有消息,并不是存在一个broker里而是由1个或多个partition分别存储一部分,这些partition分布在不同的broker里(类似redis的cluster)这么做的目的是什么?和所有使用分区/分片概念存储数据的目的是一样的。partition-leader +partition-follower :数据备份,只有leader提供服务,fol.原创 2020-10-30 18:08:10 · 1094 阅读 · 0 评论