php-cgi进程cpu负载过高:禁用wordpress定时任务wp-cron.php

这篇具有很好参考价值的文章主要介绍了php-cgi进程cpu负载过高:禁用wordpress定时任务wp-cron.php。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、问题描述

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.yii666.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.yii666.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.yii666.net/article/92978.htm

依据这篇文章提醒:vi /usr/local/php/etc/php.ini 删除文件末尾Accelerator的那几行配置删掉,保存重启lnmp,发现问题依旧,所以也排除了eAccelerator的原因,之后再重新在php.ini中添加上eAccelerator的配置。

3、file_get_contents的问题

https://www.yii666.net/article/28030.htm
https://www.yii666.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);

也不知如何操作,放弃。文章来源地址https://www.toymoban.com/news/detail-422866.html

到了这里,关于php-cgi进程cpu负载过高:禁用wordpress定时任务wp-cron.php的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Vmmem进程(WSL)占用CPU或内存资源过高的解决办法

            有没有一瞬间,在开启docker或打开虚拟机时,内存瞬间飚增,进行查看进程消耗是一个Vmmem的进程在作祟,那么Vmmem是什么呢,又如何进行限制呢!         Vmmem: 是一个系统合成的虚拟进程,用于表示虚拟机小航的内存和CPU资源。换句话说,您看到的Vmmem消耗

    2024年02月13日
    浏览(74)
  • Java进程CPU高负载排查步骤

    近期发现服务器Java进程负载,超过100% 登录服务器,执行top命令,查看CPU占用情况,找到进程的pid 很容易发现,PID为29706的java进程的CPU飙升到700%多,且一直降不下来,很显然出现了问题。 使用 top -Hp pid 命令(为Java进程的id号)查看该Java进程内所有线程的资源占用情况 很容

    2024年02月14日
    浏览(36)
  • wordpress定时任务(wp-cron.php)造成主机CPU比较高的解决办法

    自从用了阿里云主机,真是没有省心过。 这两天网站CPU天天100+的,过一会就挂了,原来是wp-cron.php文件造成的。 wordpress的定时任务功能我们还是经常要用到的,例如wordpress的定时备份,定时发布文章等都需要用到wordpress的定时任务功能,而在wordpress中,是靠wp-cron.php来实现这

    2023年04月23日
    浏览(53)
  • java 程序cpu占用过高排查

    取得cpu占用最高的PID: 27791 方式一 cgroup 如果输出中包含有类似 /docker/container_id 的字符串,就表示该进程在 Docker 容器中。 方式二 lsns   lsns命令查看程序的命名空间  ,如果显示的命名空间信息中有 ipc , mnt , net , pid , user , uts ,那么该 PID 很可能在一个 Docker 容器中。 方式三

    2024年02月07日
    浏览(51)
  • Java应用CPU占用过高问题排查

    测试环境CPU突然升高,日志查询无异常,可以通过使用jvm的调试工具定位问题。 1.定位java服务进程 2.定位java线程 3.定位代码块 1.定位进程 获取cpu占用高的进程pid 2.定位线程 转16进制 3.定位代码 目的:将当前堆栈信息保存为文件,通过16进制的TID查找问题所在的代码块;

    2024年02月12日
    浏览(44)
  • Java应用CPU占用过高故障排除

    最近测试反馈测试环境接口偶现有访问超时,然后APP提示是网络失败,看了一下测试环境的应用完全没啥问题,一直以为是网络问题。 今天测试有反馈了,赶紧看了一下测试服务器,这次终于有症状了,CPU直接飙到300%了。 尽然问题复现了,直接开干,定位问题 1、定位问题

    2024年02月10日
    浏览(42)
  • 服务器CPU使用过高的原因

    大多使用服务器的站长都会碰见这样的问题,在长时间使用后,系统越来越慢,甚至出现卡死或强制重启的情况。打开后台 才发现,CPU使用率已经快要到达90%。那么,我告诉你哪些因素会导致服务器CPU高使用率,从而严重影响运行 速度与效率。 一、硬件方面CPU不能过热这是

    2024年04月27日
    浏览(47)
  • 解决vscode的cpptools占用cpu过高问题

    原因就是C/C++扩展的问题,禁用C/C++就可以解决。具体原因是右键查找代码的引用/声明等操作比较消耗CPU。 如何使用C/C++扩展的同时还能够降低cpu过高的问题是目前的任务,解决方法如下。 以下经试验没效果,(搜索配置项并修改): x     VScode设置 Follow Symlinks 去掉勾选

    2024年02月11日
    浏览(85)
  • macOS mds_stores CPU占用过高

    当 macOS 的 mds_stores 进程占用过高的 CPU 使用率时,可能是由于 Spotlight 索引过程导致的。Spotlight 是 macOS 中用于搜索和索引文件的系统服务,而 mds_stores 是其索引进程之一。 以下是一些可能的解决方法: 等待一段时间:如果 mds_stores 进程正在进行大量的索引工作,可能需要一

    2024年02月16日
    浏览(42)
  • 解决antimalware service executable程序占用CPU过高(有效)

    有很多Win10的用户有时会莫名的电脑非常的卡,打开任务管理器查看进程情况,发现有一个Antimalware service executable进程CPU和内存占用率极高。 这个进程也无法关闭(妥妥的流氓): Antimalware Service Executable是win10内置杀毒软件windows defender的一个进程。对于普通用户来说,一般情

    2024年02月12日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包