kafka同步咋解决乱序问题
谢邀
我不确定是否百分之百地理解了您的问题,针对您所说的“消息顺序完全是乱的”,我个人认为可能有三个方面的含义,不确定您指的是哪个方面。索性就一并说下:
1. 消息全局顺序是乱的:这个应该是正常的。目前Kafka并不保证全局的消息顺序,只是提供分区级别的顺序性。如果您指这个,貌似无解。
2. 消息在单个分区内是乱序的:如果是这种情况,建议调整max.in.flight.requests.per.connection = 1(若没有启用retries,则不必调整该参数)如果您没有启动retries亦或是调整之后还发现乱序,可以结合日志进一步研究发生乱序的原因。
3. 某条消息在源集群中属于分区A,在目标集群中属于分区B:这种情况是非常有可能的,因为Kafka本身就允许source和target集群中同一个topic可以有不同的分区数,所以这种乱序极其常见。即使source和target指定了相同的分区数,也是可能发生这种情况的。要避免这种乱序有一点麻烦,需要满足以下几个条件:
消息必须有key,无key消息的分区我们不太好控制单独创建一个自定义的分区策略,并打成jar包(比如custom-partitioner.jar)供source和target使用把该jar包加到source集群producer程序的classpath中在target集群启动之前把该jar包加入到broker的classpath中在MirrorMaker的producer.config中指定partitioner.class为上面jar中的Partitioner实现类 【kafka同步咋解决乱序问题】 希望以上内容对您有所帮助~
推荐阅读
- 蟹爪兰叶子软塌,难复花,“根源”在这里,解决后开花一茬接一茬
- 贵州在建骨干水源工程达到465座有效解决工程性区域性缺水问题
- 湖北:查办黑恶势力与深挖“保护伞”同步推进
- 长春社区开设助老餐厅探索解决老人“吃饭难”
- 互联网怎样解决“家政服务上门速度慢”的问题
- 医师|我市举办首届放射医师年会现场专题讲座同步直播
- 咋解决电信营业厅对http网址的污染
- 李小璐|李小璐携甜馨跳舞,母女俩动作同步一个甜美一个高冷,相处如闺蜜
- 封面新闻|耀出行:滴滴解决你代步的“温饱”问题,我来满足你出行的仪式感需求
- 植物|花卉生长不好,这样养轻松解决!夏天温度高