0


Kafka:kafka的技术架构? ①

一、Kafka的优势

    Apache Kafka是一个开放源代码的分布式事件流平台,成千上万的公司使用它来实现高性

能数据管道,流分析,数据集成和关键任务等相关的应用程序。

二、技术架构

    0)partition分区可以设置备份数,也可以设置被几个消费组消费,如上 分区0是设置了两个被匹配消费者组消费

    1)Producer :消息生产者,就是向kafka broker发消息的客户端。

    2)Consumer :消息消费者,向kafka broker取 消息的客户端

    3)Topic :可以理解为一个队列。

    4) Consumer Group (CG):kafka提供的可扩展且具有容错性的消费者机制。既然是一个组,那么组内必然可以有多个消费者或消费者实例(consumer instance),它们共享一个公共的ID,即group ID。组内的所有消费者协调在一起来消费订阅主题(subscribed topics)的所有分区(partition)。当然,每个分区只能由同一个消费组内的一个consumer来消费。

    5)Broker :一台kafka服务器就是一个broker。一个集群由多个broker组成。一个broker可以容纳多个topic。

    6)Partition:为了实现扩展性,一个非常大的topic可以分布到多个broker(即服务器)上,一个topic可以分为多个partition,每个partition是一个有序的队列。partition中的“每一条消息”都会被分配一个有序的id 即offset偏移量,有小到大编号。kafka只保证按一个partition中的顺序将消息发给consumer,不保证一个topic的整体(多个partition间)的顺序。

    7)Offset(即id):kafka的存储文件的每个分区的偏移量都从0开始,不同分区之间的偏移量都是独立的,不会相互影响。

三、日志文件

概念的关联理解:

  •    一个Topic分别存储在不同的partition中   - 一个partitioin对应着多个replica备份- 一个relica对应着一个Log- 一个Log对应多个LogSegment- 而在LogSegment中存储着log文件、索引文件、其它文件
    

参考文档:Kafka 设计架构原理详细解析(超详细图解)_kafka原理和架构解析-CSDN博客

Kafka架构原理(超级详细)-CSDN博客

Kafka文件存储机制_kafka的文件储存机制-CSDN博客

标签: kafka 架构 分布式

本文转载自: https://blog.csdn.net/bestxianfeng163/article/details/136240617
版权归原作者 不念过往--不语未来 所有, 如有侵权,请联系我们删除。

“Kafka:kafka的技术架构? ①”的评论:

还没有评论