Kafka快速入门笔记、二 Kafka介绍

2020-07-08  本文已影响0人  肉沫炸酱面

1、介绍Kafka

    Kafka最初由Linkedln(领英)公司发布,使用Scala语言编写,后成为Apache的顶级项目。主要用于处理活跃的数据,如登陆、浏览、点击、分享等用户行为产生的数据。

    特点:

        · 高吞吐量

           可以满足每秒百万级别消息的产生和消费

        · 持久性

           有一套完善的消息存储机制,确保数据的高效安全的持久化

        · 分布式

           基于分布式的扩展和容错机制

            将数据复制到多台服务器上,当某一台发生故障时,生产者和消费者自动切换到其它服务器上

2、架构

3、组成

    Broker节点,Kafka集群中包含多个Kafka服务节点,每一个节点就是一个Broker(Broker里包含多个主题)

    Topic主题:用来存储不同类别的消息(Kafka消息数据是储存在硬盘上)(主题里包含分区)

    Partition分区:每个Topic包含一个或多个Partition,在创建Topic时指定包含的Partition数量(目的时为了进行分布式存储)

    Replication副本:在集群环境下,每个分区可以有多个副本,分布在不同的Broker上,选出一个副本作为Leader(领导者),其余Broker上的副本作为Follower(跟随者),所有的读写请求都会同南宫Leader晚才,Follower只负责备份数据。Follower会自动从Leader中复制数据,当Leader宕机后,会从Follower中选出一个新的Leader继续提供服务,实现故障自动转移

    message消息:通讯的基本单位,每个消息都属于一个Partition,消息储存在分区里

    Producer生产者:向Kafka的一个topic发布消息

    Consumer消费者: 订阅topic并读取其发布的消息,可以订阅多个topic

    Consumer Group消费者组:每个Consumer属于一个特定的Consumer Group,多个Consumer可以属于同一个Consumer Group

    Zookeeper注册消息: 协调Kafka运行,主要存储Kafka源数据信息(Kafka集群的节点,Broker,Topic等等信息),发送给Topic的消息数据并不存储在ZK中,而是存储在Kafka磁盘文件中

上一篇下一篇

猜你喜欢

热点阅读