架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 8492|回复: 0

[站长交流] 使用阿里云SLB负载均衡出现php-fpmCPU使用率90%以上解决办法

[复制链接]
发表于 2015-5-8 20:22:09 | 显示全部楼层 |阅读模式
借五一节假期间,易淘帮服务组对易淘帮网站服务器环境进行升级,由PHP5.3升级到PHP5.6,升级成功后,服务器CPU被爆到90%以上,一直居高不下。检查服务器发现是多个PHP-FPM进程造成CPU负载过高,导致易淘帮网站一度无法正常访问。通过多种方法进行检测都无法找到原因真正所在,重装了多次服务器环境以及PHP版本,甚至将PHP换到HHVM,均无法解决CPU负载过高的问题。


易淘帮服务器运行流程(服务架构图):用户客户端 → 域名解析 → 百度云加速节点(CDN/缓存/防DDOS/CC攻击) →阿里云盾节点(防CC/DDOS/WAF攻击) →ECS源服务器(CSS、JS、图片进行CDN分流),同时阿里云云盾无任何攻击信息,所以完全可以排除为攻击行为。

查看nginx日志、php-fpm日志、慢日志都并无不正常因素,从netstat -n命令中看到了多个TIME_WAIT信息,由100.97.x.x此IP段造成(最后知道此IP段为阿里云SLB监听服务IP)。


话不多说,说一下具体的解决方法,最终由易淘帮专业运维团队(V站动力)进行处理,得出了最终结果,由SLB的服务监听设置造成的CPU负载过高。
原SLB服务监听为HTTP协议80端口,http协议健康检查会定期发多个head的http请求,所以导致不断的访问读取HTTP,致使php-fpm令CPU负载长时间达到90%以上,具体CPU负载使用额度因ECS的配置而定。更改健康检查服务后,CPU使用率直线下线。

如果您也出现了此情况,请更改SLB服务监听的健康检查配置,由HTTP协议80端口改成TCP协议80端口,配置图如下:

6.jpg




上一篇:微软抛弃IE决心大 22万行代码说不要就不要
下一篇:星外提权拿服务器
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-4-27 02:01

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表