Kafka资源配置估算
①生产者峰值生产速率 R = 高峰系数f × ( 每天产生的数据条数B / 86400 ) × 单条数据大小C
其中,f 视观测情况而定,一般取10~20中间的一个数
C 的单位是bit,R的单位最终需要转换为MB/s
②估算的服务器台数M = 2 × ( 生产者峰值生产速率R × 副本数r / 100 )+ 1,结果需要向上取整,最终结果是一个奇数
③磁盘选择,机械硬盘即可
磁盘大小DC最小值 = 每天消息总条数B × 单条数据大小C × 副本数r × 保存天数d / 系数m
其中,保存天数d默认取7,系数一般取0.5~1之间的一个小数,最终结果向上取整
④CPU的选择
IO线程数 = CPU总线程数k × 50% ≈ Max( 各个Topic的Partition数量 )
副本拉取线程数Tr = CPU总线程数k × (1 - 50%) × 1/4
数据传输线程数Tt = 副本拉取线程数Tr × j,其中j一般取1或者2即可
其他维护线程数Tm = 固定值(4 ~ 8)
所以选择CPU核数至少需要32核
⑤网络带宽
一般选择千兆网即可