![应该有多少个 Nginx 进程?](https://linux22.com/image/1101122/%E5%BA%94%E8%AF%A5%E6%9C%89%E5%A4%9A%E5%B0%91%E4%B8%AA%20Nginx%20%E8%BF%9B%E7%A8%8B%EF%BC%9F.png)
刚刚在全新的 ubuntu 服务器 12.04 上安装 Nginx。
ps -e | grep nginx
起初什么也没有返回,因此我运行了nginx
它,似乎一切就开始了。
现在运行 ps -e | grep nginx
会返回许多相同的进程吗?
1793 ? 00:00:00 nginx
1794 ? 00:00:00 nginx
1795 ? 00:00:00 nginx
1796 ? 00:00:00 nginx
1797 ? 00:00:00 nginx
一切似乎都在运行,但我感兴趣的是知道为什么会有多个,它们在做什么,以及如果我只杀死其中一个,我的服务器会发生什么?
答案1
这是你的工作进程的nginx
。默认配置有 4 个工作进程。它们在这里,Web 服务器可以非常快速地处理多个连接。其中一个是主进程参见输出ps fax | grep nginx
:
user@host:~# ps fax | grep nginx
6885 ? Ss 0:00 nginx: master process /usr/sbin/nginx
6886 ? S 0:00 \_ nginx: worker process
6887 ? S 0:00 \_ nginx: worker process
6888 ? S 0:00 \_ nginx: worker process
6889 ? S 0:00 \_ nginx: worker process
您会看到有一个主进程和 4 个子进程(工作进程)。
确定配置了多少个工作进程类型:
user@host:~# grep worker_processes /etc/nginx/nginx.conf
worker_processes 4;