2

我有以下配置

worker_process 4;

但我注意到它总是只打到 1 名工人。

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

但看到他们都只打了 1 名工人。有没有一种方法可以让我至少启动 1 个以上的工人。有人可以分享他们在这方面的知识。

4

1 回答 1

0

https://blog.cloudflare.com/the-sad-state-of-linux-socket-balancing/

在 epoll-and-accept 中,负载平衡算法有所不同:Linux 似乎选择了最后添加的进程,一种类似 LIFO 的行为。最近添加到等待队列的进程将获得新连接。这种行为会导致最繁忙的进程,即刚刚返回事件循环的进程,接收大部分新连接。因此,最忙碌的工作人员可能会获得大部分负载。

于 2020-09-29T19:16:07.823 回答