kafka

作者: 穿长裙的年代 | 来源:发表于2021-03-18 11:46 被阅读0次

1、kafka 特点:

  • 发布和订阅数据流,类似消息队列;

  • 数据流存储平台,具备错误容忍;

  • 当消息产生就可以对消息处理;

2、kafka使用场景:

  • 构建实时数据流管道;

  • 构建实时数据流处理应用,转换或者响应数据流;

3、kafka基本概念

  • Producer:消息和数据的生产者,向kafka的一个topic发布消息的进程/代码/服务。

  • Consumer:消息和数据的消费者,订阅数据(Topic)并且处理其发布的消息的进程/代码/服务。

  • Consumer Group:逻辑概念,对于同一个topic,会广播给不同的group,一个group中,只有一个consumer可以消费该消息。

  • Broker:物理概念,Kafka集群中的每一个Kafka节点。

  • Topic:逻辑概念,Kafka消息的类别,对数据进行区分、隔离。

  • Partition:物理概念,Kafka下数据存储的基本单元。一个Topic数据,会被分散存储到多个Partition,每一个Partiton是有序的。

  • Replication:同一个Partition可能会有多个Replica,多个Replica之间的数据是一样的。

  • Replication Leader:一个Partition的多个Replica上,需要一个Leader负责该Partition上与Producer和Consumer交互。

  • ReplicaManager:负责管理当前broker所有区分和副本的信息,处理Kafka Controller发起的一些请求,副本状态的切换、添加/读取消息等。如果Replication Leader挂掉了,就由它负责选取新的Replication Leader。

kafka概念延伸

Partion

  • 每一个Topic被切分为多个Partitions。

  • 消费者数目少于或者等于Partition的数目。

  • BrokerGroup中的每一个Broker保存Topic的一个或者多个Partitions。

  • Consumer Group中的仅有一个Consumer读取Topic的一个或多个Partitions,并且是唯一的Consumer。

Replication

  • 当集群中有Broker挂掉的情况,系统可以主动地使Replicas提供服务。

  • 系统默认设置每一个Topic的replication系数为1,可以在创建Topic时单独设置。

  • Replication的基本单位是Topic的Partion。

  • 所有的读和写都从Leader进,Followers只是做为备份。

  • Follower必须能够及时复制Leader的数据。

    目的:增加容错性和可扩展性。

kafka基本结构

Kafka应用场景

  • 消息队列

  • 行为跟踪

  • 元信息监控

  • 日志收集

  • 流处理

  • 事件源

  • 持久性日志(commit log)

相关文章

网友评论

      本文标题:kafka

      本文链接:https://www.haomeiwen.com/subject/unpucltx.html