1 sendfile技术
sendfile 也就是我们所说的零copy,区别传统的read/writer send/rev方式,有原来的4次数据copy降低为3次。零copy值的是用户态和内核态的数据copy.
传统的方式数据copy方式
1.内核从硬盘把数据读到内核缓存
2.内核缓存到用户缓存
3.用户缓存到内核scoket缓存区
4.内核scoket缓存区到协议引擎
sendfile技术将用户态的copy去掉 直接由内核缓存区内核socket缓存区,如下
1.内核从硬盘把数据读到内核缓存
2.内核缓存到内核scoket缓存区
4.内核scoket缓存区到协议引擎
sendfile 1.减少了一次数据的copy 2. 减少了2次用户与内核之间的切换