Kafka进阶
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

3.4.2 生产者压缩机制

Kafka发送消息的时候,可以在生产者端和Broker端进行消息的压缩。在一般情况下,建议采用的压缩机制是:生产者端负责压缩;Broker端负责保持;消费者端负责解压。Kafka采用这样的压缩机制,主要是节约CPU的时间去换磁盘存储的空间,以及网络I/O的传输量。这样的做法可以以较小的CPU开销带来更少的磁盘占用或更少的网络I/O传输。

在目前的Kafka版本中,支持GZIP、Snappy和LZ4三种压缩方式,表3.2列举了这三种压缩方式的对比。

表3.2 三种压缩方式

在了解了Kafka的压缩方式后,可以在生产者端的配置参数中指定相应的压缩方式,代码如下。