在专用服务器上使用Wordpress加载PHP高服务器cpu

时间:2012-12-24 19:21:29

标签: php mysql wordpress cpanel dedicated-server

我在专用服务器上运行两个博客,一个每天有500个唯一身份访问者,另一个每天有18.000个唯一身份访问者,在cPanel中我看到PHP占用了高达99%的CPU负载而我尝试过很多东西,但没有解决问题。

服务器变速慢,250人在线,500启动数据库连接问题,当然网站变得太慢了wwwwwwwwwww。

我也尝试停用所有插件,但似乎其中任何一个都是问题。

这些是服务器规格:

CPU: AMD Athlon™ II X4 - 4x 2.3 GHz 4 Cores
Memory: 8GB Memory DDR3 ECC
Disk Controller: RAID 1 Software
First Hard Drive: 1000GB SATA Drive (7200 RPM)
Second Hard Drive: 1000GB SATA Drive (7200 RPM)
Uplink/Port Speed: 100 Mbps Uplink Port
Public Bandwidth: Unmetered 100Mbps
Operating System: Cent OS 6.2 64 bit
Control Panel Software: cPanel/WHM

[PHP] httpd.conf:

StartServers 5
MinimumSpareServers 5
MinimumSpareServers 10
ServerLimit 256
MaxClients 256
MaxRequestsPerChild 10000
KeepAlive Off
Timeout 60

Wordpress插件:

Akismet
AZIndex
BackWPup
BulletProof Security
Category Templates Two
Contact Form 7
Easy FancyBox
leenk.me
qTranslate
Really Simple CAPTCHA
Search Everything
SI CAPTCHA Anti-Spam
Stealth Update
Verve Meta Boxes
W3 Total Cache
WordPress File Monitor Plus
WP-PostRatings
WP Total Hacks

3 个答案:

答案 0 :(得分:1)

使用top检查正在使用的内存,看它是否达到限制并交换到磁盘。如果所有配置都正常,您应该看到交换使用接近零。

对于PHP,添加操作码cacher,例如APC,memcached,eaccelerator等。这将需要大量的负载。

另外,检查MySQL。如果不从出厂默认设置更改设置,则可以删除大型服务器。有关此问题的一些想法,请参阅here。我建议你JetProfiler。检查查询缓存等以查看它是否已被使用。缓存命中率低意味着它们太小。还要检查全表扫描。很多意味着您需要优化索引(使用this site来执行此操作),以便慢查询不是问题。

答案 1 :(得分:0)

您应该考虑向高负载站点添加缓存,例如使用memcached。这可能会为您节省大量资源。

进一步阅读:

答案 2 :(得分:0)

我们遇到了类似的问题。事实证明,在我们的案例中,它似乎是联系表7 /真正简单的Captcha的组合。尝试禁用这些WP插件。

如果可行,请重新启用它并清除验证码/ tmp目录和上传/验证码目录。看起来插件并没有清理它的垃圾。

如果您已经拥有这些插件的最新版本(最新版本DO清理),那么您可能就像我一样在Windows中运行。在Windows中,验证码文件创建为只读(Windows文件系统属性),因此清理失败。

因此,如果您使用最新版本的插件并且您在Windows中工作, 然后编辑文件really-simple-captcha.php ...在67行左右你会看到

$this->file_mode = 0440;

$this->answer_file_mode = 0444;

0440 0444 更改为 0666 。这将修复清理机制。

执行此操作后,请不要忘记手动删除现有的tmp文件,或至少删除其“只读”Windows文件系统属性。