正确的 MaxClients 配置

正确的 MaxClients 配置

我有这个服务器:

4 Xeon CPU
4G Ram
Centos5+Apache+php+Mysql+Redis+directadmin

现在我有一个问题。由于我的用户范围很广,Apache无法处理所有用户,并将他们放在队列中,因此系统变得非常慢。我搜索了一下,似乎如果有良好的MaxClients配置,我可以克服这个问题。但是我解释的这个系统应该如何配置呢?

当系统变慢时,我的 CPU 和 RAM 并没有满!

更新:

这是htop命令的结果:

这里,当部分前面的数字Tasks:大于 600 时,我的服务器就开始变慢了! 在此处输入图片描述

这是atop命令的结果: 在此处输入图片描述

答案1

这可能与 apache 无关。事实上,您的MaxClients系统运行良好,这应该表明 apache 可能不是问题所在。也许 Redis 或 Mysql 正在变慢并需要更多内存。这两种情况都可能导致请求耗时更长,并导致 apache 备份。

您有这些系统的图表吗?您的 P90 响应时间是什么样的?当您看到速度变慢时,处理的请求数量是否会下降?您需要这些 Redis、Mysql 和 Apache 的图表。否则,您只是在黑暗中摸索,直到您幸运地获得成功。

一些小建议:

  • CentOS5 已经很老了。使用较新的内核,您可以从相同的硬件中获得更好的性能。
  • 在一台机器上运行这么多东西太麻烦了。将事情分散到几台机器上可以让每台机器专攻并更有效地使用 Linux 缓存。由于它们将在自己的机器上使用 CPU,因此还可以更轻松地找出谁在消耗 CPU。

相关内容