一、成绩形容
1、19号手动晋级到wordpress4.1,21号早上7点看网站php探针,发现零碎负载过高,差不多在1到1.5之间。
2、尽管关于双核解决器,这个值还能够承受,然而之间负载都只有0.2左右,而网站流量又没有忽然添加很多,所以推定一定是出成绩了。
3、eth 外网流量失常,lo 本地流量增长很快,reboot零碎后(之间效劳器曾经稳固运转了632天9小时25分钟),1个小时不到就有了1G的流量。
4、top命令发现php-cgi 占用cpu很多,大局部工夫都在80%到90%之间,cpu time+ 工夫很长。
二、处理办法
1、百度搜寻:php cgi cpu找到文章
https://www.jb51.net/article/92975.htm
2、修正php-fpm.conf
request_terminate_timeout 0s 改为30s
request_slowlog_timeout 0s 改为3s
重启php-fpm:/usr/local/php/sbin/php-fpm restart
3、查看slow.log发现,每一个统计工夫点里都有如下提醒
script_filename = /网站门路/wp-cron.php
[0xbfcaa950] do_action_ref_array() /网站门路/wp-cron.php
4、想到可能和wp-cron.php无关,于是百度搜寻:wp-cron.php找到:
https://www.jb51.net/cms/495321.html
5、于是找到php-cgi过程占用cpu资源招致效劳器负载过高的处理办法:禁用WP-Cron
编辑wordpress wp-config.php,退出:define(‘DISABLE_WP_CRON’, true);
而后 /root/lnmp restart 重启lnmp
重启之后cpu 占用终于失常,网站负载也减了上去,slow.log 也不再添加新的内容
三、扫除可能的缘由
1、禁用hyper cache
开端感觉可能hyper cache生成的缓存文件过多惹起php负载,禁用hyper cache插件后发现负载非但不降,反而升了,阐明:不是hyper cache的成绩且hyper cache能够起到升高php负载的作用。
2、删除eAccelerator
https://www.jb51.net/article/92978.htm
根据这篇文章提示:vi /usr/local/php/etc/php.ini 删除文件末尾Accelerator的那几行配置删掉,保留重启lnmp,发现成绩照旧,所以也扫除了eAccelerator的缘由,之后再从新在php.ini中增加上eAccelerator的配置。
3、file_get_contents的成绩
https://www.jb51.net/article/28030.htm
https://www.jb51.net/article/92980.htm
参考上边两篇文章,ll /proc/PID/fd 没有发现异样。
yum install strace 装置(不装置会提醒谬误:-bash: strace: command not found) 后
strace -p pid,有相似的提醒谬误:poll([{fd=4, events=POLLIN}], 1, 0) = 0 (Timeout)
页面不停的闪烁,效劳器负载骤增。
两篇文章中提到的:stream_context_create 设置超时工夫,技术太差,齐全看不懂要如何操作,所以也没方法向下进行,保持。
4、php5.2 和curl的兼容成绩
处理办法:设置curl超时工夫
curl_setopt($ch, CURLOPT_TIMEOUT, 2);
也不知如何操作,保持。
以上就是安达网络工作室关于《php-cgi进程cpu负载过高:禁用wordpress定时任务wp-cron.php》的一些看法。更多内容请查看本栏目更多内容!
自从用了阿里云主机,真是没有省心过。 这两天网站CPU天天100+的,过一会就挂了,原来是wp-cron.php文件造成...
去掉logo或许左侧栏的菜单,避免被改掉。 在应用模板下的functions.php下修正 复制代码代码如下: function ...
WP的性能弱小在于有支持并完满兼容的插件。自身WP链接治理不好自在排序,CoCo Link Sort 这款插件补偿了这样...
随着 WordPress 一版一版的晋级,性能越来越多,代码量也越来越宏大,对 WordPress 速度慢的埋怨声也越来越...
本文实例讲述了wordpress晋级后明码正确后盾无奈登陆的处理办法。分享给大家供大家参考。详细剖析如下: 明...
wp_parse_args() 函数是 WordPress 外围常常用到的函数,它的用处很多,但最次要用来给一个数组参数(args)...