Kafka基本概念

一、Kafka简介

   1、Kafka是LinkedIn开源的分布式发布-订阅消息系统,目前归属于Apache顶级项目。Kafka主要特点是基于Pull的模式来处理
         消息消费,追求高吞吐量,一开始的目的就是用于日志收集和传输。0.8版本开始支持复制,不支持事务,对消息的重复、
         丢失、错误没有严格要求,适合产生大量数据的互联网服务的数据收集业务。
   2、Kafka的性能是最高,它强调高性能,能在廉价的服务器上,也能支持单机每秒100K条数据的吞吐量,Kafka的高性能读写主要
         是基于Linux操作系统底层的PageCache,PageCache虽不用内存但胜似内存,而且Kafka完全不需要内存和磁盘数据同步的
         烦恼,所以Kafka的生产者、消费者的读写完全是基于内存。

二、Kafka基本概念(从物理概念和逻辑概念分析)

   1、Producer:消息和数据的生产者,向Kafka的一个topic发布消息的进程、代码、服务
   2、Consumer:消息和数据的消费者,订阅数据(Topic)并且处理其发布的消息的进程、代码、服务
   3、Consumer Group:逻辑概念,对于同一个topic,会广播给不同的group,一个group中,只有一个Consumer
         可以消费该消息
   4、Broker:物理概念,Kafka集群中的每个Kafka节点
   5、Topic:逻辑概念,Kafka消息的类别,对数据进行分区、隔离
   6、Partition:物理概念。Topic物理上的分组,一个Topic数据,会被分散存储到多个Partition,每一个Partition是有序的。
   7、Segment:Partition物理上由多个segment 组成,每个segment存着message信息
   8、message:Kafka发送消息的基本单位
   9、payload:是message中的一部分,相当于value
   10、Replication:同一个Partition可能会有多个Replica,多个Replica之间数据是一样的
   11、Replication Leader:一个Partition的多个Replica上,需要一个Leader负责该Partition上与Producer和Consumer交互
   12、ReplicaManager:负责管理当前broker所有分区和副本的信息,处理KafkaController发起的一些请求,副本状态的切换、
          添加、读取消息等

三、Kafka基本概念延伸

    1、Partition
          1)每一个topic被切分为多个Partitions
          2)消费者数目少于或者等于Partition的数目(设计之初是为了避免多个消费者重复消费一个Partition的数据)
          3)Broker Group中的每一个Broker保存Topic的一个或多个Partitions
          4)Consumer Group中的仅有一个Consumer读取Topic的一个或多个Partition,并且是唯一的Consumer(和2)对应)

    2、Replication
          1)当集群中有Broker挂掉的情况,系统可以主动的使Replicas提供服务
          2)系统默认设置每一个Topic的Replication系数为1,可以在创建Topic时单独设置
          3)Replication特点
                 --Replication的基本单位是Topic的Partition
                 --所有的读和写都从Leader进,Followers只是作为备份
                 --Follower必须能够及时复制Leader的数据
                 --增加容错性和可扩展性
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值