Kafka-之集群节点数量分区数量确定

1 节点数量

kafka的集群数量得按照实际业务需求来确定,主要是看kafka的生产者端消息的峰值生产速度,最好保证盈余一点。

通常生产的集群节点数量确认遵循以下经验公式

# 
kafka_broker_nums = 2*(峰值生产速度()*2/100) + 1 

# 假如峰值生产速度为50MB/s(通常是20+MB/s比较正常)
kafka_broker_nums = 2*(50*2/100)+1 = 3台

2 分区数量

性能测试可以参考:

  • 首先在单节点创建只有一个partition的topic

  • 通过性能测试获取生产者、消费者的吞吐量

  • 在单节点创建一个只有一个分区的topic

  • 通过性能测试获取生产者、消费者的吞吐量

  • 假设吞吐量分别为Tp 和Tc,可以是MB/s

  • 假设总的目标吞吐量是Tt,那么分区数=Tt/min(Tp,Tc)

  • 加入Tp=20MB/s,Tc=50MB/s,期望的吞吐量为100MB/s

  • 那么分区数为100/min(20,50) = 100/20 = 5个分区

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐