Kafka

Kafka

Kafka存储层-日志管理

共24人围观 0个不明物体

Kafka 的日志管理负责日志的创建、检索、清理,和日志相关的读写操作则交给日志实例去处理。每个 TopicPartition 都对应一个物理层面上的 log 实例,LogManager 使用了log...

Kafka

Kafka存储层-数据零拷贝

共176人围观 0个不明物体

Kafka 在执行消息的写入和读取这么快的原因,其中的一个原因是零拷贝(Zero-copy)技术,下面我们来了解一下这么高效的原因。传统的文件读写传统的文件读写或者网络传输,通常需要将数据从内核态转换...

Kafka

Kafka存储层-消息读取

共236人围观 0个不明物体

Kafka 的主副本主要负责消息的读写操作,消费者或者备份副本都会向主副本同步数据。客户端读取主副本的过程又叫做“拉取”,拉取消息时肯定会指定拉取的偏移量。比如前面介绍过的,消费者会根据提交偏移量,或...

Kafka

Kafka存储层-日志分段

共176人围观 0个不明物体

前面我们提到了,服务端存储日志的分区单元是日志分段(LogSegment)。同一个日志分段内,所有消息的偏移量都是递增的,因此可以保证整个分区的偏移量都是递增的。Kafka 服务端节点每个 Topic...

Kafka

Kafka存储层-日志的写入

共214人围观 0个不明物体

Kafka是一个分布式的、分区的、复制的提交日志服务。Kafka 使用提交日志作为最终的存储格式。从之前的文章描述,我们可以了解到,在 Broker 端同一个 Topic 可以存储在不同的分区上面。每...

Kafka

KafkaConsumer分区分配策略

共388人围观 0个不明物体

前面我们讲到Consumer加入组的流程,主要包括了JoinGroup 和 SyncGroup 两个步骤。其中在JoinGroup 之后会选出 Consumer Group 的Leader 用于组内订...

Kafka

KafkaConsumer中的位移提交

共363人围观 0个不明物体

说位移提交之前,我们首先简单的回顾一下位移和消费者位移之间的区别。我们通常所说的位移是指 TopicPartition 在 Broker 端的存储偏移量。而消费者位移是指某个消费者组在不同 Topic...

Kafka

Kafka消费者加入group流程(下)

共425人围观 0个不明物体

接上篇:《Kafka消费者加入group流程(上)》发送加入组请求(Rebalance流程)消费者首次加入group也可以认为是Rebalance的一种,其中包含了两类请求:JoinGroup 和 S...

Kafka

Kafka消费者加入group流程(上)

共357人围观 0个不明物体

前面我们讲到了消费者端的网络模型,但是对于Kafka而言,在接收消息之前,消费者是必须要加入 group的。一个消费者 group 由一个或者多个消费者组成,原则上每个消费者都需要有一个 groupI...

Kafka

KafkaConsumer网络模型分析

共324人围观 0个不明物体

前面我们介绍了Kafka 生产者客户端的相关原理和网络模型,对于客户端消费者的网络模型,其实现要比生产者的设计还要复杂一些。今天我们主要讲述一下KafkaConsumer 网络模型的主要设计。消息消费...