天天看点

Kafka-硬件的选择

Kafka-硬件的选择

磁盘吞吐量(重要,影响生产者)

生产者客户端的性能直接受到服务器端磁盘吞吐量的影响。

生产者生成的消息必须被提交到服务器保存,大多数客户端在发送消息后会一直等待,直到至少一个服务器确认消息已经成功提交为止。

磁盘写入速度越快,生成消息的延迟就越低。

磁盘容量(制约集群规模)

需要多大的磁盘容量取决于需要保留的消息数量,也需要考虑集群复制策略的影响。

通过让主题拥有多个分区,集群的总流量可以被均衡到整个集群。

内存(重要,影响消费者)

消费者一般从分区尾部读取消息,如果有生产者存在,就紧跟在生产者后面。这种情况下,消费者读取的消息会直接存放在系统的页面缓存里,这比从磁盘上重新读取要快得多。

运行kafka的JVM不需要太大的内存,剩余的系统内存可以用作页面缓存,或者用来缓存正在使用中的日志片段。

所以,不建议把kafka同其他重要的应用程序部署在一起,它们需要共享页面缓存,最终会降低kafka消费者的性能。

网络(制约集群规模)

网络吞吐量决定了kafka能够处理的最大数据流量。

网络吞吐量和磁盘存储是制约kafka扩展规模的主要因素。

CPU(不重要)

继续阅读