kafka中的零拷贝
2024-01-03 18:21:39 0 举报
kafka中的零拷贝
作者其他创作
大纲/内容
producer生产者
2.3复制数据
应用程序
kafka
步骤1.1~1.3:生产者将数据写入磁盘步骤2:Consumer无需零拷贝读取数据2.1:数据从磁盘加载到OS缓存2.2 将数据从OS缓存复制到Kafka应用程序2.3 Kafka应用程序将数据复制到socket缓冲区2.4 将数据从socket缓冲区复制到网卡2.5 网卡将数据发送给消费者步骤3:消费者以零拷贝方式读取数据3.1:数据从磁盘加载到OS缓存3.2 OS缓存通过sendfile()命令直接将数据复制到网卡3.3 网卡向消费者发送数据 零拷贝是在应用程序上下文和内核上下文之间保存多个数据副本的快捷方式。这种方法将时间缩短了大约 65%。
socket buffer
1.2写入RAM
直接写
1.1生产者写数据
consumer消费者
OS buffer
应用程序buffer
2.2复制数据
2.1加载数据
没有零拷贝
发送给消费者
kafka零拷贝
1.3定期异步写入
零拷贝
3.1从磁盘加载数据
NIC网卡 buffer
磁盘
2.4复制数据
3.2直接写
收藏
收藏
0 条评论
回复 删除
下一页