新闻发布
管理系统近公司网络负责人申请购买了一台阿里云T5共享性云主机,CPU15%当时没有太注意这个这个事情。服务器开通后几天网站不能访问服务器出现卡顿情况,技术一顿操作没有发现个所以然,只能求助阿里工单,工单回复:
工程师 67349 号:您好,这边测试telnet 您的远程端口22可以通,但是网站服务无法正常访问,麻烦您通过控制台远程连接功能登录到服务器使用netstat -ntulp |grep 80命令查看一下网站服务是否正常监听,服务是否正常启动。 另外这边查看到您这台服务器是T5实例,该系列实例应用于特殊的业务场景,如一天做一两次活动的网站业务,其运行机制较特殊,该实例在正常工作负载时,CPU使用率大为15%,此时会获取积分,待业务量上涨时可临时提升CPU大使用率至70以上,对应的此时会消耗积分,等积分用完了cpu会自动下降为大15%,目前查看您近期cpu一直处于15%左右的状态 如果主机没有积分了,cpu的使用率会限制在15%,主机会变得卡顿。 您可以在实例控制台确认下当前是否cpu积分已经消耗完了,然后通过控制台远程连接功能登录到服务器,参考以下链接排查一下CPU负载高的原因。 https://help.aliyun.com/knowledge_detail/52566.html 如果您的业务不适合使用T5实例,建议升级变更成其他实例规格 T5实例规格介绍: https://help.aliyun.com/document_detail/59977.html?spm=5176.11065259.1996646101.searchclickresult.59af17b4pUxlCy
嗨~~!不小心入坑,要想保证15%的CPU使用量这个有点难,优化的东西很多比如要优化程序、Nginx、数据库、PHP-FPM….~!这个时候经验就起到作用了。工程师为了排查总结了一下过程如下:
首先:TOP查看一下占用CPU资源高的进程
通过TOP命令发现aliyundun这个线程忽高忽低,Nginx的线程也很高,跟阿里工单沟通了一下aliyundun的线程占用2.5%工单说正常,那只能查看Nginx了。
后来:工程师采用了简单粗暴的方法,停止web服务
发现aliyundun的进程也降下去了,CPU一下子见到了0.1%看来nginx出了问题,接着工程挨个开启网站服务,发现并非网站程序的问题,那就是nginx的问题为了服务稳定工程师觉得不排查nginx服务了。
接着:查看nginx版本升级版本,问题解决,此方法慎用
工程师看了一下nginx版本为1.8.1果断升级了1.15.1升级问题解决,后台技术人员总结了一下应该重启一下php-fpm又能是这块出了问题。