扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
昨天,有客户反馈说客户端软件(第三方公司开发的windows桌面软件)打开的运行的时候有点卡,而这个软件后台用的是我们开发的系统。说打开这个软件需要15秒才能看到软件界面,以为是后台接口卡壳导致的。我们第一时间检查后端系统,发现这个客户端使用的几个接口都还算正常,基本响应时间是200-600ms。所以客户端软件卡应该不是后端服务造成的,可能是新版本本身的逻辑导致的。
但我们意识到接口200-600ms也算比较卡了,虽然不是这个原因导致客户端卡15秒,但这个响应速度比我们一般类似接口都要慢很多。于是我们开始排查原因,登录服务器发现客户这台2核心4GB的服务器CPU占用率一直持续在80%以上的高位,很长时间甚至超过95%。而检查系统日志及数据统计发现同时在线使用客户端软件的用户并没有特别多,检查接口逻辑也没问题。那么是什么原因呢?
直到我们先空载这台服务器,然后写了一个独立测试脚本测试,发现依然比正常服务器慢很多。所以,我们跟客户要了他阿里云账号查看这台服务器的具体情况。结果登录账号就发现阿里云提示性能受限的通知。如下图:
根据我们的经验,性能受限那只能是阿里云T5实例,进一步查看发现他的服务器果然购买的是T5实例。而T5实例在性能约束模式下,CPU的性能只能达到基准性能(20~25%)。对于两核心的机器来讲,即便不运行网站程序,在安装php和mysql等软件后即便空载也会很容易达到20%以上,这时候CPU的性能瓶颈就到来了。
客户升级阿里云这台云服务器的CPU为普通类型后,上述接口响应时间稳定在50ms左右。CPU负载就立马下降到很低水平(下图猛烈下降后就是更换CPU后)。
通俗的讲,CPU就好像汽车的发动机一样,同样是2.0T排量的发动机,不同级别的车装载的发动机差别可大了,比如百万级别的汽车和十几万的肯定是有差别的。云服务器的CPU也是一样的,同样2核心的差别可以说可能天差地别。
比如上面是阿里云同样2核心4GB的配置,最低的T6实例才68一个月,而最高的hfc7实例需要226一个月,将近4倍的差距,正所谓一分钱一分货。而据这个客户介绍,他的这台服务器是原来的网络服务商提供的。所以,请大家购买服务器的时候需要注意这些细节的差距,特别是委托别人代购的时候,可千万别被坑了。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流