1.NGINX架构图
作者:
Stone_説 | 来源:发表于
2020-08-05 01:37 被阅读0次
1.nginx架构图
![](https://img.haomeiwen.com/i20339207/547f750b3c3d1e53.jpg)
nginx架构.jpg
2.nginx模块图
![](https://img.haomeiwen.com/i20339207/ec6d9d289c37c6d1.jpg)
Nginx模块图.jpg
3.原始数据拷贝操作
1.传统Linux中 I/O 的问题
2.传统的 Linux 系统的标准 I/O 接口( read、 write)是基于数据拷贝的,也就是数据都是 copy_to_user 或者 copy_from_user,这样做的好处是,通过中间缓存的机制,减少磁盘 I/O 的操作,但是坏处也很明显,大量数据的拷贝,用户态和内核态的频繁切换,会消耗大量的 CPU 资源,严重影响数据传输的性能,统计表明,在Linux协议栈中, 数据包在内核态和用户态之间的拷贝所用的时间甚至占到了数据包整个处理流程时间的57.1%
3.什么是零拷贝
4.零拷贝就是上述问题的一个解决方案,通过尽量避免拷贝操作来缓解 CPU 的压力。零拷贝并没有真正做到“0” 拷贝,它更多是一种思想,很多的零拷贝技术都是基于这个思想去做的优化
![](https://img.haomeiwen.com/i20339207/206627b8dc257cd5.jpg)
原始数据拷贝操作.jpg
4.Memory Mapping
![](https://img.haomeiwen.com/i20339207/a9e75a3f9013d7bd.jpg)
Memory Mapping.jpg
5.SENDFILE
![](https://img.haomeiwen.com/i20339207/f8dd08cf8881e002.jpg)
SENDFILE.jpg
6.DMA辅助的SENDFILE
![](https://img.haomeiwen.com/i20339207/44b7b2482088fa49.jpg)
DMA辅助的SENDFILE.jpg
本文标题:1.NGINX架构图
本文链接:https://www.haomeiwen.com/subject/qtagrktx.html
网友评论