【linux-WebServer】nginx学习3(nginx基础概念-connection)
来源:互联网 发布:网络共享打印机不打印 编辑:程序博客网 时间:2024/05/17 08:47
1.connection
在nginx中connection就是对tcp连接的封装,其中包括连接的socket,读事件,写事件。利用nginx封装的connection,我们可以很方便的使用nginx来处理与连接相关的事情,比如,建立连接,发送与接受数据等。而nginx中的http请求的处理就是建立在connection之上的,所以nginx不仅可以作为一个web服务器,也可以作为邮件服务器。当然,利用nginx提供的connection,我们可以与任何后端服务打交道。
2.nginx是如何处理一个连接
结合一个tcp连接的生命周期,我们看看nginx是如何处理一个连接的。
首先,nginx在启动时,会解析配置文件,得到需要监听的端口与ip地址,然后在nginx的master进程里面,先初始化好这个监控的socket(创建socket,设置addrreuse等选项,绑定到指定的ip地址端口,再listen),然后再fork出多个子进程出来,然后子进程会竞争accept新的连接。
此时,客户端就可以向nginx发起连接了。当客户端与服务端通过三次握手建立好一个连接后,nginx的某一个子进程会accept成功,得到这个建立好的连接的socket,然后创建nginx对连接的封装,即ngx_connection_t结构体。接着,设置读写事件处理函数并添加读写事件来与客户端进行数据的交换。最后,nginx或客户端来主动关掉连接,到此,一个连接就寿终正寝了。
阅读全文
0 0
- 【linux-WebServer】nginx学习3(nginx基础概念-connection)
- nginx学习笔记(2):nginx基础概念之connection
- nginx基础概念-connection
- nginx学习(三)——基础概念之connection
- 【linux-WebServer】nginx学习(CDSN就是用这个服务器)
- 【linux-WebServer】nginx学习2(信号与定时器)
- nginx基础概念(100%)之connection
- nginx中connection概念
- nginx-WebServer
- Nginx系统学习篇(1)--基础概念
- Nginx系统学习篇(2)--基础概念IO
- nginx基础概念-request
- nginx基础概念-keepalive
- nginx基础概念-pipeline
- nginx基础概念-lingering_close
- nginx 配置说明 [WebServer]
- FreeBSD Install Nginx Webserver
- Linux基础-7(nginx)
- 金、古归来不看梁
- 如果有两位小数不为0则保留两位小数,如果有一位小数不为0则保留一位小数,否则保留整数
- Android 5.0+删除Sdcard文件
- 欢迎使用CSDN-markdown编辑器
- xported service does not require permission问题。
- 【linux-WebServer】nginx学习3(nginx基础概念-connection)
- 安卓使用okhttp连接网络
- [曝光台]各个机器学习群群主请注意,有这么一些家伙,专业打广告,别让他们进群
- 端午佳节,几维安全多款加密产品感恩大回馈!
- Dart与消息循环机制
- 网络编程 TCP分包粘包MTU和MSS之间的关系分析
- 关键字高亮显示
- MVC5+EF6 入门完整教程六
- ABAP SCREEN常用元素定义