Nginx的进程结构

Nginx的进程结构有两种,分别是单进程结构和多进程结构。而单进程结构一般只能应用于开发和测试,而不能应用于生产环境;多进程结构才能应用于生产环境,这是因为多进程结构比较稳定。

Nginx的多进程结构有以下组成部分:

1.Master进程

2.Worker进程

3.Cache Manager进程

4.Cache Loader进程

而在生产上使用多进程结构而不是多线程结构,是因为线程会共享地址越界是会导致整个Nginx进程全部挂掉,而当我们采取多进程结构,往往就不会出现这样的问题。第三方模块通常不会在Master进程中添加自己的功能,而Master进程就是用来管理Worker进程,需要监控每个Work进程,看看需不需要重新载入配置文件、热部署等。所有Worker进程才是真正处理请求的进程。缓存需要再多个Work进程间共享,而Cache Loader进程进行缓存载入,Cache Manager进程进行缓存管理。Nginx进程间通讯都是通过共享地址空间进行的。
Work进程需要从头到尾占有一个CPU才能更好提供服务,所以Work进程不但需要跟CPU核数一致,而且每一个Work进程需要与一个CPU进行绑定,这样才能减少CPU缓存问题。

此文章为10月Day 23学习笔记,内容来源于极客时间《Nginx 核心知识 150 讲》

相关推荐
BD_Marathon24 分钟前
【Zookeeper】搭建Zookeeper服务器
linux·服务器·zookeeper
星尘库30 分钟前
怎么实现js混淆加密 每隔一段时间 会失效 需要重新加密使用
java·服务器·前端
q***876034 分钟前
Nginx之rewrite重写功能
数据库·mysql·nginx
庚昀◟40 分钟前
Wsl系统下使用Ubuntu下载官网Nginx并加入系统服务
linux·nginx·ubuntu
a***56061 小时前
Knife4j文档请求异常(基于SpringBoot3,查找原因并解决)
java·服务器·数据库
weixin_462446231 小时前
【原创实践】安装与配置 lua-cjson 在宝塔 Nginx 上
nginx·junit·lua
武子康1 小时前
Java-179 FastDFS 高并发优化思路:max_connections、线程、目录与同步
java·开发语言·nginx·性能优化·系统架构·fastdfs·fdfs
未来之窗软件服务2 小时前
服务器运维(十六)vlang语言linuxSSH日志分析——东方仙盟炼气期
运维·服务器·服务器运维·东方仙盟
不染尘.2 小时前
计算机网络评价指标和封包解包
服务器·网络·计算机网络
w***37512 小时前
在 Ubuntu 22.04 上安装和配置 Nginx 的完整指南
linux·nginx·ubuntu