Kafka快速高效的原因

因为kafka高吞吐量,管道大,而保证kafka快速移动大量数据的设计决策有 顺序I/O 和 零拷贝复制原则 

顺序I/O:

  通过使用仅附加日志作为主要数据结构,将新数据添加到文件末尾

  

 

 

 顺序I/O的优势在于相比随机读取,他的读取速度更快

 

 

 零拷贝复制原则:

  不使用零拷贝复制的情况下,磁盘上的一页数据发送给消费者,需要创建4个副本和2个系统调用

 

 

 而采用零拷贝复制的话,只需要创建1个副本

 

 

采用零拷贝复制原则,程序调用系统sendfile(),直接将数据从操作系统缓存复制到网卡缓冲区,复制通过DMA(直接内存存取)完成,CPU不参与,所以更加高效。

 

 视频学习记录:https://www.youtube.com/watch?v=UNUz1-msbOM&ab_channel=ByteByteGo

 

 
posted @ 2023-03-09 12:43  Naihe\  阅读(53)  评论(0编辑  收藏  举报
// 音乐播放器