kafka学习总结之kafka核心

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kafka学习总结之kafka核心相关的知识,希望对你有一定的参考价值。

1、  Kafka核心组件

(1)replication(副本)、partition(分区)

一个topic可以有多个副本,副本的数量决定了有多少个broker存放写入的数据;副本是以partition为单位的,存放副本即是备份若干个partition,但是只有一个partition被选为Leader用于读写;partition(分区)数量设置最好大于consumer数量(保证每个消费者都有一个partition)。

(2)producer(生产者)

kafka中的producer可以直接发送消息到Leader partition;producer可以决定将消息推送到哪些partition;可以使用批处理(Batch)推送消息,提高效率;一个重要的参数acks(0、-1、1)

(3)consumer(消费者)

消费者分组,同一个group的consumer不能同时消费同一个partition,对于同一个group的consumer,kafka就相当于一个队列消息服务,各个consumer均衡的消费相应partition中的数据。当消费者数大于分区数时,存在leader consumer和follower consumer,leader consumer处理所有的读写请求,当leader consumer挂掉时,follower consumer会成为新的leader consumer。

2、  kafka核心特性

消息集合压缩、消息可靠性(exactly-once)、备份机制、高效性设计(磁盘线性写、B树、sendfile、zero-copy)

以上是关于kafka学习总结之kafka核心的主要内容,如果未能解决你的问题,请参考以下文章

Kafka核心设计与实践原理总结:进阶篇

kafka学习总结017 --- consumer配置参数之max.poll.interval.ms

Kafka入门教程:学习总结目录索引

java面试项目中的技术难点,面试总结+解答分享!

Kafka多维度系统精讲之-Kafka核心API——Consumer学习笔记(重要)

kafka学习总结