PHP CGI 进程占用CPU过高导致CPU使用达到100%的另类原因
由于使用的华为云的CDN加速,结果发现我的阿里云服务器突然卡顿,网页打开极慢。登陆华为云CDN管理后台发现最高带宽占用30M,流量短时间内达到10GB以上,这么大的流量我的服务器肯定扛不住啊。于是还跟华为云进行了一个撕逼,然后果断弃了华为云。
但是更换了其他CDN或者WAF之后,CPU占用依然居高不下,网上找了很多办法都不管用。
看了下是 PHP CGI 进程占用CPU最多,而且经过检测发现是 浏览器内核检测 网站的 PHP CGI 占用最高,其他的很少。然而看第三方网站统计,并没有很大的访问量啊。
于是我用下面步骤进行排除:
第一步,暂停了占用最多CPU的网站,发现很快CPU占用下来了。也就是肯定是这个网站的原因,但是我近期并未更新网站代码啊,应该不存在死循环之类的bug导致占用 CPU 过多;
第二步,紧接着我排查所有页面,经检查未发现挂马或者被黑的现象;
第三步,将 ie.icoa.cn 解析到一个新的目录,并放置一个静态的 html 首页。发现网站可以正常访问,而且CPU并未出现占用过高的情况;
第四步,测试PHP运行是否正常,将html页面改成php页面,测试正常,CPU正常;
第五步,将网站原首页复制到新网站目录下,测试一切正常。就当我以为没问题的时候,将整个网站全部复制到新网站目录下,立刻出现CPU占用过高的情况。然后我就想到这种情况肯定不是由于正常访问造成的,因为刚刚恢复访问,不至于有这么大的正常访问。个人猜测肯定是有爬虫抓取,而且无底线的抓取耗尽了资源;
第六步,将所有页面删除,然后一个页面一个页面的往新网站目录下拷贝文件,终于我在复制了 最新UA记录 这个页面的时候,CPU立刻爆表。破案了,肯定是有人想要UA数据,于是用爬虫爬我公开的最新UA记录页面。
第七步,我删除了 最新UA记录 页面之后,CPU占用恢复正常。
于是找到了原因,是某些没有底线的爬虫,抓取的频率太高,耗尽了我的服务器资源。抱歉你们这么做,我只好不让你们爬了!
PHP CGI 进程占用CPU过高导致CPU使用达到100%的另类原因的更多相关文章
- 万答#3,MGR最佳配置参考,PFS里的监测指标要全开吗,mysqld进程占用内存过高怎么排查
GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 问题1,有推荐的MGR运行最佳配置参考吗 在「3306π」社区广州站5月22日的分享会上,万里数据库CTO娄帅给出了他建议 ...
- Hadoop 服务SYS CPU过高导致宕机问题
最近某hadoop集群多次出现机器宕机,现象为瞬间机器的sys cpu增长至100%,机器无法登录.只能硬件重启,ganglia cpu信息如下: 首先怀疑有用户启动了比较奇葩的job,导致不合理的系 ...
- Java进程占用内存过高,排查解决方法
最近收到邮件报警,说内存使作率达到84%.如下图: 解决方法: A:可能是代码原因导致的问题: 1.使用命令:top 查看当前进程的状态 2.从上图可以看到PID:916的java进程占用内存较大.定 ...
- java进程占用系统内存高,排查解决
转自:http://blog.51cto.com/chengxiaobai/2052530?cid=695076 故障:最近收到生产服务器的报警短信以及邮件,报警内容为:内存使用率高于70%. 使用t ...
- Explorer内存占用偶尔变高导致卡顿
症状: 打开 "这台电脑",加载缓慢.此时查看任务管理器,explorer内存可能飙升到几G.cpu也很高 创建和删除文件缓慢,删除单个文件也会出现进度条.此时查看任务管理器,会出 ...
- w3wp.exe进程占用内存过高解决方法
解决CPU占用过多: 1.在IIS中对每个网站进行单独的应用程序池配置.即互相之间不影响. 2.设置应用程序池的CPU监视,不超过25%(服务器为4CPU),每分钟刷新,超过限制时关闭. 根据w3wp ...
- java进程占用系统内存高,排查方法
查看所有内存占用情况 top 定位线程问题(通过命令查看16764 进程的线程情况) ps p -L -o pcpu,pmem,pid,tid,time,tname,cmd 计数 ps p -L -o ...
- memcache占用CPU过高的解决办法
Simon最近为公司服务器操碎了心 , 先是mysqld进程占用CPU过高 , 导致服务器性能变低 ,网站打开太慢.通过增加max_connections及table_cache解决了问题 ,随后发现 ...
- 查询执行成本高(查询访问表数据行数多)而导致实例 CPU 使用率高是 MySQL 非常常见的问题
MySQL CPU 使用率高的原因和解决方法_产品性能_常见问题_云数据库 RDS 版-阿里云 https://help.aliyun.com/knowledge_detail/51587.html ...
随机推荐
- cmake安装与使用
CMake(cross platform make)是一个开源的跨平台工具系列,旨在构建,测试和打包软件. 使用指定名为CMakeLists.txt的配置文件可以控制软件的构建.测试和打包等流程. 通 ...
- jquery关于on click事件的理解
jquery关于on click事件的理解 <pre><a style="min-width:60px; margin-left:6px;" wenzhangid ...
- pandas 模块
什么是pandas pandas是一个python的包,主要用来处理表格格式的文件,可以快速的对表格进行查询,过滤,合并等操作. pandas的简单使用 pandas读入table格式文件 #读入一个 ...
- 解决GitHub下载慢或下载失败问题
1.登录自己的码云账户 码云网站:https://gitee.com/luckyplj8/events 2.新建一个仓库. 3.选择导入已有仓库. GitHub资源链接: 4.等待码云克隆项目,大概1 ...
- Delphi编码与签名【URL编码与解码,Base64编码与解码,MD5加密,HMAC-SHA1、HMAC-SHA224、HMAC-SHA256、HMAC-SHA384和HMAC-SHA512签名】
作者QQ:(648437169) 点击下载➨delphi编码与签名 [Delphi编码与签名]URL编码与解码,Base64编码与解码,MD5加密,HMAC-SHA1.HMAC-SHA224.HMAC ...
- 收藏单词TOEFL备份托福英语
TOEFL托福词汇串讲(文本) alchemy(chem-化学)n. 炼金术 chemistry 化学 alder 赤杨树 联想:older 老人坐在赤杨树下 sloth 树懒 algae n.海藻 ...
- Golang 常用的第三方包.
Goland 下面这个license server 可用 http://idea.youbbs.org (2018-01-10 04:26:09) http://45.77.127.87:81(201 ...
- Mybatis中使用association及collection进行自关联示例(含XML版与注解版)
XML版本: 实体类: @Data @ToString @NoArgsConstructor public class Dept { private Integer id; private Strin ...
- Assignment 2: UDP Pinger[课后作业]
Computer Networking : A Top-Down Approach 的课后作业. 要求: 基于UDP协议,实现一个Pinger工具. 服务端代码已经提供了,自己实现客户端的代码. 完整 ...
- 【转载】 C#中float、double以及decimal类型有何不同
在C#语言中,float.double以及decimal类型都可以用来表示小数,但三者还是有一定的不同,有效数字为相比的话,decimal类型的有效数字最大,float类型最小.计算浮点类型的运算,如 ...