您的位置: 首页> Java源码> 贝壳三面:RocketMQ和KAFKA的零拷贝有什么区别?

贝壳三面:RocketMQ和KAFKA的零拷贝有什么区别?

时间:2025-09-04 13:15:01 来源:互联网

文章内容收录到个人网站,方便阅读:hardyfish.top/

mmap + write

mmap

传统 I/O 数据拷贝过程(四次拷贝):

基于 mmap 实现的拷贝过程(三次拷贝):

mmap 优势:

mmap 的缺点:

sendfile

基于 sendfile 实现的拷贝过程(两次拷贝):

sendfile 优势:

sendfile 的缺点:

性能对比:CPU 拷贝与 DMA 拷贝

为什么 RocketMQ 选择 mmap

为什么 Kafka 选择 sendfile

总结

上一篇:[Java] 浅析 Set.of(...) 方法 下一篇:JDK Security 底层分析

相关文章

相关应用

最近更新