大量的Apache进程正在使用我的CPU使用率始终超过70%

我在1and1上运行一个plesk面板。 我有120个网站正在运行,并且都使用pligg cms,每个站点每天有600个访问者。 请参阅下面我的服务器的详细信息:

HDD-1000GB RAM-16GB处理器-6核心

我总是看到很多的Apache进程在我的#顶视图中运行,所以服务器似乎超载。 如果我可以减lessapache进程的数量,我认为服务器会好的。 但我不知道为什么太多的Apache进程正在运行。

请参阅下面的链接,了解我的#顶视图的屏幕截图:

http://dl.dropbox.com/u/26967109/%23Top-2.jpg

有时我在我的plesk控制面板中看到了太多的连接错误,所以我在我的[mysqld]部分添加了下面的行:

设置variables= MAX_CONNECTIONS = 416

但是我还没有find解决scheme。 我还在config /etc/httpd/conf/httpd.conf中添加了maxclients和serverlimit 416

但没有解决scheme呢。 我正在研究超过7天,但没有得到任何解决scheme。 请帮我解决这个问题。

在高峰时段,我的网站需要花费太多时间才能加载,但非高峰时间没问题。

请帮我找出实际的问题。

你有很多负载,因为EightBitTonybuild议你应该优化你的查询。 如果这是不可能的,分开您的networking服务器和数据库服务器。 获取一个额外的服务器,除了回复数据库请求外别无它物。

另外检查这是你的mysqlconfiguration:

  • thread_concurrency

在你的情况下,它应该是12,但是如果你想为你的apache保留一些CPU空闲的话,你可能想把它减less到10或8。 这里这个人解释了一些你可能想要做的调整MySQL的其他事情。 你仍然有很多可用的内存,所以你应该逃避caching更多的查询。

你有很多的Apache进程,因为你有很多连接的用户(浏览器)。 如果您限制连接数量,则有些用户将拒绝连接。 你也会注意到在那个截图中,mysql正在你的服务器上使用2.6核心CPU。

你有繁忙的网站,你需要通过减less网站的处理需求来减less负载。 使查询更有效率,减less脚本处理时间等。不知道你的网站做什么,不可能提供更具体的build议。

基本上 – 你的服务器很忙,因为它很忙。 你不想限制连接(可能),你想要使这些连接更有效率。