kafka默认消息分片路由规则


 发一个消息,如何知道消息被默认分片到哪里

1.如果没有指定key,是随机分片

2.如果指定了key,即  new KeyedMessage<String, String>(String topic, String key, String message)

 

可以套用一下公式计算:

          key.hashCode() % 12

 

例如有一个topic 叫test,有8个patition,key="1",则日志文件在

        "1".hashCode() % 8=1

在 *****/log/test-1/    目录下面

 

ref: https://www.iteye.com/blog/dashiliu-2416073


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM