[读书笔记]初探nginx架构1_进程模型
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了[读书笔记]初探nginx架构1_进程模型,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1450字,纯文字阅读大概需要3分钟。
内容图文
![[读书笔记]初探nginx架构1_进程模型](/upload/InfoBanner/zyjiaocheng/158/4c8ceafdbabb4e128c3d3b945736e46e.jpg)
nginx启动后进程后台包含一个master进程与多个worker进程。
(终端nginx命令与master交互)
master进程用来管理worker进程包含
- 接收来自外界的信号
- 向各worker进程发送信号
- 监控worker进程的运行状态
- 当worker进程退出后(异常情况下),会自动重新启动新的worker进程
基本的网络事件放在worker进程中来处理。多个worker进程之间是对等的,他们同等竞争来自客户端的请求,各进程互相之间是独立的。一个请求,只可能在一个worker进程中处理,一个worker进程,不可能处理其它进程的请求。
处理流程
- 每个worker进程都是从master进程fork过来,在master进程里面,先建立好需要listen的socket(listenfd)之后,然后再fork出多个worker进程
- 所有worker进程的listenfd会在新连接到来时变得可读,为保证只有一个进程处理该连接,所有worker进程在注册listenfd读事件前抢accept_mutex
- 抢到互斥锁的那个进程注册listenfd读事件,在读事件里调用accept接受该连接当一个worker进程在accept这个连接之后,就开始读取请求,解析请求,处理请求,产生数据后,再返回给客户端,最后才断开连接
该进程模型好处
- 对于每个worker进程来说,独立的进程,不需要加锁,所以省掉了锁带来的开销
- 在编程以及问题查找时,也会方便很多
- 采用独立的进程,可以让互相之间不会影响,一个进程退出后,其它进程还在工作,服务不会中断,master进程则很快启动新的worker进程
以上就介绍了[读书笔记]初探nginx架构 1_进程模型,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。
内容总结
以上是互联网集市为您收集整理的[读书笔记]初探nginx架构1_进程模型全部内容,希望文章能够帮你解决[读书笔记]初探nginx架构1_进程模型所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。