[云代维案例]由Discuz论坛插件导致云主机CPU 100%的解决过程-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

[云代维案例]由Discuz论坛插件导致云主机CPU 100%的解决过程

2014-12-17 13:51:37 15139 15
客户遇到的问题如下:

查看top,命令结果如下:

检查过程中经常出现2个高CPU的PHP进程,但是截这张图的时候只有一个。

再来看下php-fpm的配置:

在这里发现了一个坑死人不偿命的配置,PHP进程最高只能有2个(截图的时候已经被我修改为了20,修改之前是2),所以当这两个PHP进程都出问题的时候,再就没有PHP进程干活了,于是网站就打不开了。

那么来看看PHP进程到底发生了什么问题:

PHP进程进入到了死循环,而且这个错误信息是由于网络连接导致的。

再来看看PHP到底在连接哪台主机:

可以看到云主机上的PHP进程正在请求220.181.136.41的80端口。

再来看看这个IP到底是哪路神仙:

可以发现,这是sinaapp云平台的IP。

于是到网站根目录里grep查找sinaapp,找到了这个程序:

来看看addon.sinaapp.com的IP:


看看这个地址是干什么的:

跟客户确认:

至此问题已经查清,是由于这个验证插件在addon.sinaapp.com上的接口没有正常运行,导致的本地PHP出错并进入死循环。

对PHP开发者的一点提示:在php5.2.x版本中使用curl方式抓取网络内容超时会导致CPU飙升,但是在5.3+版本中已经修复了这个问题,抓取超时对CPU几乎没有影响。

PHP抓取远程内容最好的方式是curl,不过很多程序可能是出于兼容性的考虑,使用了fsockopen方式来抓取远程内容(curl需要模块支持,虽然大多数环境都已经安装,但不排除少量的没有安装,fsockopen则是PHP内置的函数)。fsockopen超时时在不同PHP版本中的CPU消耗没有测试过,有兴趣的可以研究下。

原创文章,转载请以超链接方式注明出处:http://www.yundaiwei.com/post/269.html
取消 提交回答
全部回答(15)
  • asky8
    2014-12-27 12:15:05
    你是我偶像
    0 0
  • wgrid.cn
    2014-12-26 16:38:36
    Re由Discuz论坛插件导致云主机CPU100%的解决过程
    赞一个
    0 0
  • 小春春
    2014-12-25 00:31:47
    Re由Discuz论坛插件导致云主机CPU100%的解决过程
    我看懂了,但是我却迷糊了,看懂了意思,却被字母绕晕了
    0 0
  • cn9999
    2014-12-19 10:37:55
    我的网站用curl和php5.2,做个标记
    0 0
  • 雨中听风
    2014-12-18 23:35:59
    哇塞这都可以.NB
    0 0
  • 不动明王
    2014-12-18 15:37:09
    Re由Discuz论坛插件导致云主机CPU100%的解决过程
    掉转头
    0 0
  • 哎哟
    2014-12-18 14:50:55
    服务器之家 的技术很好,就是太忙不注意休息
    0 0
  • mmx360
    2014-12-18 01:03:19
    Re由Discuz论坛插件导致云主机CPU100%的解决过程
    相当牛B的排查
    0 0
  • 乐途乐客
    2014-12-17 23:43:06
    Re由Discuz论坛插件导致云主机CPU100%的解决过程
    哇塞这都可以.NB
    0 0
  • 秋疯
    2014-12-17 23:21:12
    对高手只有羡慕嫉妒恨了,啥时候有这么一个伙伴,天天就舒心多了
    0 0
  • neowo
    2014-12-17 18:03:20
    Re由Discuz论坛插件导致云主机CPU100%的解决过程
    楼主有在阿里云的代维供应商名单内吗?
    0 0
  • enet03
    2014-12-17 15:28:20
    Re由Discuz论坛插件导致云主机CPU100%的解决过程
    你是高手啊
    0 0
  • 看头像
    2014-12-17 15:01:34
    支持服务器之家
    0 0
  • 爱摩卡
    2014-12-17 14:19:01
    Re由Discuz论坛插件导致云主机CPU100%的解决过程
    是杠杠的
    0 0
  • trcher
    2014-12-17 14:10:44
    楼主技术过硬
    0 0
滑动查看更多
相关问答

18

回答

【大咖问答】对话PostgreSQL 中国社区发起人之一,阿里云数据库高级专家 德哥

阿里ACE 彭飞 2019-07-10 09:36:10 1049917浏览量 回答数 18

162

回答

惊喜翻倍:免费ECS+免费环境配置~!(ECS免费体验6个月活动3月31日结束)

豆妹 2014-10-29 17:52:21 226266浏览量 回答数 162

145

回答

【新手入门】云服务器linux使用手册

fanyue88888 2012-11-26 17:14:18 157778浏览量 回答数 145

22

回答

爬虫数据管理【问答合集】

我是管理员 2018-08-10 16:37:41 147291浏览量 回答数 22

2

回答

mySQL数据库报错You have an error in your SQL syntax

落地花开啦 2016-02-14 16:09:24 129280浏览量 回答数 2

249

回答

阿里云LNAMP(Linux + Nginx + Apache + MySQL + PHP)环境一键安装脚本

云代维 2014-02-14 15:26:06 305729浏览量 回答数 249

97

回答

Redhat/CentOS一键安装web环境全攻略

xiaofanqie 2011-08-11 14:51:38 123752浏览量 回答数 97

1

回答

阿里云开发者论坛一周精粹期刊汇总 -  2018.12

福利达人 2018-03-06 16:42:35 206152浏览量 回答数 1

24

回答

【精品问答】python技术1000问(1)

问问小秘 2019-11-15 13:25:00 475924浏览量 回答数 24

14

回答

域名解析是正确的,但是网站打不开求助!

游客b4ezpaqg54gdq 2019-07-05 11:50:33 119422浏览量 回答数 14
+关注
0
文章
2053
问答
问答排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载