当前位置:   article > 正文

Kafka选型

kafka选型

版本

kafka经历了 0.7,0.8,0.9,0.10,0.11,1.0,2.0等大版本,1.0以上的版本一般上是升级优化了kafka的流处理。若将kafka当做消息队列差别不大。目前我司使用的是kafka2.0版本

一般上我们使用的kafka都是Apache Kafka即社区版的

操作系统

操作系统无脑选Linux

磁盘

磁盘分为机械硬盘和固态硬盘,当然固态硬盘性能比机械好很多,但是kafka是追加写,所以一般使用机械硬盘其实也够用。但是具体问题具体分析

磁盘容量

需要根据公司业务进行实际规划。需要几个数据才能衡量

  1. 平均每条消息的大小
  2. 平均每天发送消息数
  3. 消息持久化时间
  4. 副本数

比如每天1亿条消息,每条1kb,保存两份,保存两周(消息数,保存时间,备份数,消息大小)

1亿*1kb*2/100/100=200GB

再加上其他类型的数据,如索引等等,因此要多预留10%以上即220GB(预留空间)

220GB*14天=3TB

kafka支持压缩,假设压缩比是0.75(是否启用压缩)

0.75*3=2.25TB

带宽

Kafka是通过网络大量数据传输的框架,因此带宽是一个瓶颈。Kafka性能出现问题有很大程度可能是因为带宽。带宽一般使用两种 1Gbps (千兆网)和10Gbps(万兆网)。我们需要根据带宽来规划Kafka服务器的数量。

比如一个业务,需要1小时内处理1TB的业务数据,name需要多少台Kafka服务器?

每台服务器上应用最多也就70%(1.考虑不可能一台服务器就只部署一个kafka,2.当带宽占比太高了会有网络丢包的可能)。那么一台服务器大约700Mb的带宽资源。留给卡夫卡的1/3已经算很多了,那最多就是240Mbps(30MB/s,这个已经算很多了,其实可以再往下估计一点)。

1h处理1TB数据,则1s需要处理2336Mb数据。2336Mb/240Mbps =10台服务器。若总共有三个副本,则10*3=30台服务器

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/623203
推荐阅读
相关标签
  

闽ICP备14008679号