1. 如果consumer比partition多,是浪费,因为kafka的设计是在一个partition上是不允许并发的,所以consumer数不要大于partition数

2. 如果consumer比partition少,一个consumer会对应于多个partitions,这里主要合理分配consumer数和partition数,否则会导致partition里面的数据被取的不均匀。最好partiton数目是consumer数目的整数倍,所以partition数目很重要,比如取24,就很容易设定consumer数目

3. 如果consumer从多个partition读到数据,不保证数据间的顺序性,kafka只保证在一个partition上数据是有序的,但多个partition,根据你读的顺序会有不同

4. 增减consumer,broker,partition会导致rebalance,所以rebalance后consumer对应的partition会发生变化

consumer和partition的数量建议相关推荐

  1. kafka中consumer和partition的对应关系

    参考文章:https://www.cnblogs.com/gxyandwmm/p/11442328.html 一个partition只能被同组的一个consumer消费,同组的consumer则起到均 ...

  2. kafka consumer、partition、rebalance

    发送消息分配partition Producer发送消息到Topic时,分配partition的算法如下: 如果指定了一个partition,那么直接使用指定的partition 如果没有指定part ...

  3. OpenShift 4 之AMQ Streams(1) - 多个Consumer从Partition接收数据

    <OpenShift 4.x HOL教程汇总> 文章目录 AMQ Streams是什么? 安装 AMQ Streams 环境 安装AMQ Streams Operator 创建Kafka集 ...

  4. kafka 消息分发机制、分区和副本机制

    一.消息分发机制 1.1 kafka 消息分发策略 消息是 kafka 中最基本的数据单元,在 kafka 中,一条消息由key.value两部分构成,在发送一条消息 时,我们可以指定这个key,那么 ...

  5. Kafka 的实现原理

    1.消息中间件能做什么? 1.1 异步处理 消息中间件主要解决的就是分布式系统之间消息传递的问题,它能够屏蔽各种平台以及协议之间的特性,实现应用程序之间的协同.举个非常简单的例子,就拿一个电商平台的注 ...

  6. 图解kafka - 设计原理解析

    什么是消息队列? 简单来说,消息队列是存放消息的容器.客户端可以将消息发送到消息服务器,也可以从消息服务器获取消息. 问题导读: ********* 为什么需要消息系统? kafka架构? kafka ...

  7. Kafka设计原理看了又忘,忘了又看?

    什么是消息队列?简单来说,消息队列是存放消息的容器.客户端可以将消息发送到消息服务器,也可以从消息服务器获取消息. 作者:lbzhello来源:博客园|2019-07-18 09:17 什么是消息队列 ...

  8. kafka深入研究之路(1)-剖析各原理02

    kafka深入研究之路(1)-剖析各原理02 接着上一文的内容 继续升入研究 topic如何创建于删除的 topic的创建 具体流程文字为: 1. controller 在 ZooKeeper 的 / ...

  9. kafka修改分区数_Kafka笔记

    一.kafka基本介绍 1概念:是一个分布式的基于发布/订阅模式的消息队列,应用于大数据实时处理 1.消息队列(topic): 优点:解耦 可恢复性 缓冲 削峰 异步通信 两种模式: 点对点模式:一对 ...

最新文章

  1. python培训费用-python培训费需要多少钱?
  2. 自动化特征工程和自动建模在风控场景的应用
  3. emwin修改text字体颜色_Rggplot2 绘制带颜色条的相关性散点图
  4. 用C#实现C/S模式下软件自动在线升级[转载]
  5. 新零售场景下的AIPL分析
  6. ManicTime软件破解
  7. iOS 11更新第6个开发者测试版,变化最大的竟然是App Store标识
  8. read .off file in matlab
  9. [Android] [Java] Process 创建+控制+分析 经验浅谈
  10. Python学习之OS模块初识
  11. 阶段5 3.微服务项目【学成在线】_day03 CMS页面管理开发_04-新增页面-服务端-接口开发...
  12. mysql 中间表的好处_MySql 使用中间表来提高统计查询速度
  13. tf-idf Sklearn文本数据的处理
  14. vue2 怎么用vite_vite快速入门教程
  15. 服务器安装iis网站,安装IIS发布我的第一个网站图文教程
  16. PyTorch 使用 TensorBoard 中的 writer.add_scalar 与 writer.add_scalars 的区别
  17. python中print输出变量_python中如何使用print函数?
  18. rtthread spiflash (w25q64)
  19. 如何统计多个Excel文件中的信息,统计多个工作簿中的数据,统计多个表格中相同的条,统计多个表格的和等等
  20. 20230225在WIN10下安装PR2023失败的解决

热门文章

  1. 使用MVC4,Ninject,EF,Moq,构建一个真实的应用电子商务SportsStore(一)
  2. 在IDEA下导入Maven项目之后 Dependencies报红线
  3. 使用PLSQL客户端登录ORACLE时报ORA-12502和ORA-12545错误的解决方案
  4. 给Tomcat打开远程debug端口
  5. 如何防止XshellPortable、putty、SecureCRT等断网造成Linux命令中断
  6. InetAddress.getLocalHost()详解及异常处理
  7. (四)Canvas API方法和属性汇总
  8. JBoss 系列五十:使用Apache httpd(mod_jk)和JBoss构架高可用集群环境
  9. vue.js的使用总结
  10. javascript淘宝主图放大镜功能