nginx worker process always run only 1

我有以下配置:

worker_process 4;

但我发现它始终只有一个 worker 在工作。

我在本地的 Centos 虚拟机上进行测试。我在特定的端口上进行 curl http 调用,并添加了包含 1000 个 curl 请求的文件,并从多个终端窗口运行它们。

但是发现它们都只命中了一个 worker。有没有办法让至少启动多于一个 worker。请有知识的人分享一下。

点赞
用户9783845
用户9783845

在 epoll 和 accept 的负载均衡算法中,Linux 选择了最后被添加的进程,一种类似 LIFO 的行为。最近被添加到等待队列的进程将获得新的连接。这种行为会导致最繁忙的进程,也就是最近才返回事件循环的进程,接收大部分新连接。因此,最繁忙的工作进程很可能会承担大部分负载。

2020-09-29 19:16:07