首页 > 其他分享 >Kafka历史&客户端功能介绍

Kafka历史&客户端功能介绍

时间:2022-10-24 18:13:46浏览次数:45  
标签:分批 Zookeeper 介绍 Kafka 发送 吞吐量 消息 客户端

Producer新旧对比

新版本:

  1. 发送过程被分为两个线程,一条消息发送后经用户主线程进入内存缓冲区,Sender I/O线程将缓冲区中的数据分批发给Kafka broker
  2. 完全异步发送消息,通过FutureCallback来通知发送者
  3. 分批机制,提升整体吞吐量
  4. 轮询方式对无key消息分区,更加均匀
  5. 底层使用Selector

旧版本:

  1. 无分批发送,吞吐量差
  2. 消息发送完全同步,吞吐量差
  3. 无key消息在一段时间内发给固定分区,容易造成数据倾斜

Consumer新旧对比

新版本:

  1. 消息offset由Kafka内部topic处理,不受限于Zookeeper性能瓶颈
  2. 消费者组由集中式协调者管理,不再由Zookeeper管理
  3. 底层使用Selector,单线程设计,简化实现

旧版本:

  1. offset和消费者组由Zookeeper处理
  2. 提供low-level consumerhigh-level consumer,前者提供的功能更少,但给了你更多定制化的选择,后者功面向用户提供更高级的功能(比如消费者组),但你没法高度定制

磁盘规划

image

未完...

标签:分批,Zookeeper,介绍,Kafka,发送,吞吐量,消息,客户端
From: https://www.cnblogs.com/lilpig/p/16820682.html

相关文章

  • 4.5 Kafka Consumer API之多线程并发处理
    1.Consumer一对一消费Partition(1).简介这种类型是经典模式,每一个线程单独创建一个KafkaConsumer消费一个partition,用于保证线程安全。(2).代码示例publicclassKafkaCon......
  • 6.4 Kafka集群之副本集
    1.简介kafka的数据是存储在日志文件中的,kafka副本集(副本因子)是指将这些日志文件复制多份从而起到数据备份的目的。kafka中的topic只是个逻辑概念,实际存储数据的是partiti......
  • 6.5 Kafka集群之Leader选举
    1.Broker选举(1).不采用多数投票方式选举的原因kafka并没有采用多数投票来选举leader的(redis和es采用的是多数投票方式来进行选举的),原因有两个,一是防止选举时选举到了数......
  • 硬件加密芯片介绍 及 加密芯片选择(加密IC) 加密芯片原理
    前端时间有研究多款加密芯片,加密算法实现,以及破解可能,也有一些个人的观点,仅供参考; 一,加密芯片的来源及工作流程:市面上的加密芯片,基本都是基于某款单片机,使用I2C或SPI等......
  • kubernetes 客户端KubeClient使用及常用api
    KubeClient是kubernetes的C#语言客户端简单易用,KubeClient是.NETCore(目标​​netstandard1.4​​​)的可扩展KubernetesAPI客户端,github地址:​​https://github.com/tin......
  • awk介绍
    ​awk基础awk基本语法如下,awk[options]‘program’file对于上述语法中的program来说,又可以细分成pattern和action,也就是说,awk的基本语法如下awk[options]‘Patte......
  • 复合事件处理(Complex Event Processing)介绍
    复合事件是由史丹佛大学的DavidLuckham与BrianFraseca所提出,DavidLuckham与BrianFraseca于1990年提出复合事件架构,使用模式比对、事件的相互关系......
  • Kafka Consumer指定时间戳位置消费消息
    KafkaConsumer指定时间戳位置消费消息若用户不想从最旧的或最早的offset位置开始消费,想指定某个时间戳位置开始消费,是否可行呢?答案:可行的用户给定时间戳,kafkaserve......
  • sed介绍
    1、sed介绍   sed全名为streameditor,流编辑器,用程序的方式来编辑文本,功能相当的强大。是贝尔实验室的LeeE.McMahon在1973年到1974年之间开发完成,目前可以在......
  • 15.Linux下安装Kafka
    1.解压解压安装包并将解压后的目录移动到/usr/local/kafka目录下。tar-zxvfkafka_2.11-2.3.0.tgzmvkafka_2.11-2.3.0/usr/local/kafkacd2.启动cd3.检验执行jps命令,如......