kafka吞吐量高的原因
生活随笔
收集整理的這篇文章主要介紹了
kafka吞吐量高的原因
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
kafa 吞吐量高的原因
1、順序讀寫
kafka的消息是不斷追加到文件中的,這個特性使kafka可以充分利用磁盤的順序讀寫性能
順序讀寫不需要硬盤磁頭的尋道時間,只需很少的扇區旋轉時間,所以速度遠快于隨機讀寫
2、零拷貝
在Linux kernel2.2 之后出現了一種叫做"零拷貝(zero-copy)"系統調用機制,就是跳過“用戶緩沖區”的拷貝,建立一個磁盤空間和內存的直接映射,數據不再復制到“用戶態緩沖區”
常用模式:
kafka使用如下模式:
3、分區
kafka中的topic中的內容可以被分為多分partition存在,每個partition又分為多個段segment,所以每次操作都是針對一小部分做操作,很輕便,并且增加并行操作的能力
4、批量發送
kafka允許進行批量發送消息,producter發送消息的時候,可以將消息緩存在本地,等到了固定條件發送到kafka
5、數據壓縮
Kafka還支持對消息集合進行壓縮,Producer可以通過GZIP或Snappy格式對消息集合進行壓縮
壓縮的好處就是減少傳輸的數據量,減輕對網絡傳輸的壓力
- 批量發送和數據壓縮一起使用效果最好,單條做數據壓縮的話,效果不明顯
總結
以上是生活随笔為你收集整理的kafka吞吐量高的原因的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 虾青素好不好
- 下一篇: 龙胆泻肝丸治疗早泄吗