kafka生产者:
分区策略:
分区的原因:
1)方便在集群中扩展,每个partition可以通过调整以适应它所在的机器,而一个topic又
可以有多个partition组成,因此整个集群就可以适应任意大小的数据了;
2)可以提高并发,因为可以以partition为单位读写了。
分区的原则:
1)指明partition的情况下,直接将指明的值直接作为partition值;
2)没有指明partition值但有key的情况下,将key的hash值与topic的partition数进行取余得到
partition值;
3)没有partition和key情况下,第一次调用时随机生成一个整数,将这个值与topic可用的par
tition总数取余得到partition值,也就是常说的round-robin算法。