我设置nginx服务于Drupal安装,而且我似乎在nginx工作进程设置上find了冲突的信息。 一个网站说你需要两个,一个说你需要五个,一个说每个处理器一个…
我应该如何selectnginx工作进程的数量? 如果它有所作为,那么它就是VMWare集群上的访客虚拟机,而且我给了它一个虚拟处理器。
Nginx不像Apache和其他每个连接的webservers进程。 它使用一个主进程来启动和监视实际处理连接的less量工作进程。 我的build议是从默认的工人数量开始,即1。
worker_processes 1;
如果您发现nginx工作人员在IO上花费的时间太多,您只需要增加此项。 直到它每秒处理数百个请求时才会这样。
您也可能会发现这些设置很有用。
worker_rlimit_nofile 8192; events { worker_connections 2048; use epoll; }
在SMP系统上,至less应该启动nCPU工作进程:在四核 – 四个等等。这就是代理服务器。
如果您要为一些静态内容提供服务,最好添加更多的工作人员 – 每个磁盘一个。
如果您的磁盘子系统性能不佳或负载过高,则nginx工作进程可能会被locking在I / O操作上,并且无法处理其他请求。 在这种情况下,您应该将工作进程的数量增加到适当的值(可能是几十),或者为磁盘caching添加一些内存。
查看“ps ax”打印输出:处于“D”状态的工人被locking。 增加,直到至less获得nCPU工作进程不被阻止。