![nginx工作进程负载分担](https://linux22.com/image/651355/nginx%E5%B7%A5%E4%BD%9C%E8%BF%9B%E7%A8%8B%E8%B4%9F%E8%BD%BD%E5%88%86%E6%8B%85.png)
我已经将 nginx 设置为使用 4 个工作进程,但只有其中一个处理所有请求。其他 3 个工作进程处于空闲状态。以下是 htop 的屏幕截图
nginx.conf 看起来像这样
worker_processes 4;
events {
worker_connections 10240;
multi_accept on;
use epoll;
}
worker_rlimit_nofile 20000;
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 30;
tcp_nopush on;
tcp_nodelay on;
client_body_timeout 10;
reset_timedout_connection on;
.........
服务器是一台 EC2 C3 大型机器,有 2 个 CPU 核心。任何帮助都将非常感谢
答案1
所有工作线程均未处于活动状态,因为您没有为 nginx 服务器加载足够的负载。一旦您加载了足够的负载,它将分布在您创建的各个工作进程中。因此,如果您只有一个客户端,请使用多个客户端应用程序实例增加流量,或者尝试从多个客户端发送流量。