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

原文地址:https://www.cnblogs.com/yoyowin/p/15464263.html