当前位置: 首页 > news >正文

09 生产者分区机制

kafka如何保证消息的有序

可以通过key-ording策略解决。kafka可以为每条消息定义消息键,也称为key,通常是带有业务属性的比如用户id之类的。有相同消息键的消息会被发到同一个分区。下面实现了key-ordering策略,对key的hashcode进行取模来决定发到哪个分区

List<PartitionInfo> partitions = cluster.partitionsForTopic(topic);
return Math.abs(key.hashCode()) % partitions.size();

kafka默认的分区策略,如果key有值就使用key-ordering策略,如果没有值就使用轮训策略。

在消息重试的时候,分区策略会重新再计算一次吗

不会的。消息重试只是简单地将消息重新发送到之前的分区

key-ordering策略的问题

如果某些key数据库很大,有数据倾斜的问题。

kafka怎么保证分区数据和生产者消息顺序一致

http://www.lryc.cn/news/146267.html

相关文章:

  • 亚马逊鲲鹏系统是怎么操作测评的
  • 电脑上的视频如何导入苹果手机?
  • tsmc standard cell命名规则
  • 基于ssm医院在线挂号预约系统源码和论文
  • mysql binlog 浅谈
  • three.js(八):内置的三维几何体
  • IDEA 性能优化
  • react 获取表单中输入框的值
  • [虚幻引擎 UE5] EditableText(可编辑文本) 限制只能输入数字并且设置最小值和最大值
  • Docker技术--Docker容器管理
  • three.js(七):内置的二维几何体
  • golang-bufio 缓冲读
  • 前端 js实现 选中数据 动态 添加在表格中
  • MySQL—MySQL主从如何保证强一致性
  • Lora升级!ReLoRa!最新论文 High-Rank Training Through Low-Rank Updates
  • gateway动态路由和普通路由+负载均衡,借助eureka
  • HTTP原理与实现
  • 现在软件开发app制作还值得做吗
  • java八股文面试[JVM]——类初始化过程
  • 什么是SQL注入攻击,解释如何防范SQL注入攻击?
  • StringBuilder类分享(2)
  • IDEA查看类中的方法
  • MySQL日期格式及日期函数实践
  • MySQL项目迁移华为GaussDB PG模式指南
  • 流处理详解
  • Qt中XML文件创建及解析
  • 【pyqt5界面化工具开发-11】界面化显示检测信息
  • Batbot电力云平台在智能配电室中的应用
  • 链表(详解)
  • 最简单vue获取当前地区天气--高德开放平台实现