Kafka原理解析
1、Kafka整体概述
2、kafka消息发送机制
3、kafka消息消费机制
4、kafka副本机制
5、kafka消息可靠性
6、kafka存储机制
7、kafka控制器
8、kafka协调器
江城子v3
当你的才华不足以支撑你的野心时,就要静下心来努力学习!
展开
-
1、Kafka整体概述
Kafka是一个分布式、支持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性就是可以实时的处理大量数据以满足各种需求场景,比如高吞吐的批处理系统、低延迟的实时系统。原创 2020-07-26 19:40:06 · 225 阅读 · 0 评论 -
2、Kafka消息发送机制
Kafka的生产者是往Kafka写消息的程序,由两个线程协调运行,分别为主线程和Sender线程。在主线程中由KafkaProducer创建消息,然后通过拦截器、序列化器和分区器后缓存到消息累加器中。然后由Sender线程从消息累加器中获取消息并将其发送到Kafka中。原创 2020-07-19 19:54:41 · 2538 阅读 · 0 评论 -
3、Kafka消息消费机制
消费者主要是从Kafka集群拉取消息,然后进行相关的消费逻辑,消费者的消费进度由其自身控制,这样增加消费的灵活性,比如消费端可以控制重复消费某些消息或者跳过某些消息进行消费。原创 2020-07-19 21:51:31 · 633 阅读 · 0 评论 -
4、kafka副本机制
副本机制也称为备份机制,通常是指分布式系统在多台网络互联的机器上保存有相同的数据拷贝。kafka的副本机制主要是提供数据冗余,即使系统部分组件失效,系统依然能够继续运转,从而增加了整体可用性以及数据持久性。原创 2020-07-26 21:51:57 · 219 阅读 · 0 评论 -
5、Kafka消息可靠性
kafka 提供三种语义的传递:at most once、at least once、Exactly Once,显然Exactly Once才是我们真正想要的,但是只在0.11.0.0之后的版本中支持,如果是0.11之前的版本,想实现精确一次,需要通过其他方式,如通过让下游系统具有幂等性来配合。原创 2020-08-09 19:13:58 · 136 阅读 · 0 评论 -
6、Kafka存储机制
kafka 使用日志文件的方式保存生产者发送的消息,每条消息都有一个 offset 值来表示它在分区中的偏移量。Kafka 存储的一般都是海量消息数据,为了避免日志文件过大,一个分区并不是直接对应在一个磁盘上的日志文件,而是对应磁盘上的一个目录。原创 2020-08-09 19:16:39 · 129 阅读 · 0 评论 -
7、kafka控制器
在于分布式系统中,总会有一个地方需要对全局 meta 做一个统一的维护,Kafka 的 Controller 就是充当这个角色的。原创 2020-08-16 20:43:01 · 109 阅读 · 0 评论 -
8、kafka协调器 - ing
kafka协调器原创 2020-08-16 20:53:36 · 155 阅读 · 0 评论 -
9、kafka面试题
kafka面试题原创 2020-08-16 20:54:46 · 323 阅读 · 0 评论