1

我们正在对 PHP (Kohana) 应用程序进行一些负载测试。我们注意到的一件有趣的事情是,每个请求似乎每次都创建了 4 个进程,并将服务器上的负载增加了 4 倍。例如,当每秒有 500 个用户点击时,它相当于 500*4。

我真的不明白是什么创建了所有这些流程。我的理解是,每个 PHP 请求都会创建一个线程,它不应该创建进程,尤其是 4。这可能是 Apache 的问题吗?还是PHP问题?

我在 Google 上没有找到任何关于此的信息。任何有关可能导致此问题的建议将不胜感激。

4

1 回答 1

0

我的第一个猜测是您只是看到了 Apache MinSpareServers 设置的效果。Apache 不会在收到请求时启动进程,而是准备好等待。因此,如果将其设置为 4,Apache 将始终尝试让活动进程 + 4 运行。

它也可能是 ThreadsPerChild 设置,具体取决于您如何配置 Apache。在这种情况下,每个孩子总是启动指定数量的线程,以便它们准备好。

许多进程或线程不一定是问题。除了等待处理传入流量之外,他们可能什么都不做。

于 2012-04-25T07:42:36.220 回答