kafka性能片

kafka性能的优化

消息压缩算法

  • 在Kafka中,压缩可能发生在两个地方:生产端和Broker端
  • 让Broker重新压缩消息的2中例外情况:Broker端指定和Producer端不同的压缩算法;Broker端发送了消息格式转换(可能为了兼顾老的kafka版本)
  • 如果用一句话总结一下压缩和解压缩,那么我希望你记住这句哈:Producer端压缩,Broker端保持,Consumer端解压缩
  • 对Kafka而言, 这4种压缩算法的性能测试结果很一致:在吞吐量方面,LZ4>Snappy>zstd和GZIP;在压缩比方面,zstd>LZ4>GZIP>Snappy

zero-copy

Kafka在数据传输的时候,使用了零拷贝技术,这样的技术大大提升了Kafka 的吞吐率。来研究下 Kafka中的零拷贝是如何实现的。

1.Kafka “高吞吐” 之顺序访问与零拷贝

https://cloud.tencent.com/developer/article/1476649

2.kafka通过零拷贝实现高效的数据传输

https://blog.csdn.net/lxlmycsdnfree/article/details/78973864

3.Kafka的零拷贝技术

https://www.jianshu.com/p/835ec2d4c170

4.什么是“零拷贝”技术

https://baijiahao.baidu.com/s?id=1648595456047501430&wfr=spider&for=pc

上一篇:RocketMQ 源码学习笔记 Producer 是怎么将消息发送至 Broker 的?


下一篇:RocketMQ-broker存储机制-整体结构