阿里云ECS服务器CPU占用较高时,该如何处理?
分析一下问题,看看是什么原因。
是程序bug吗?
检查程序,看看是否有任何异常,如无限循环等。如果有,修改一下。
查找消耗cpu的程序
看程序,看程序哪个部分消耗cpu,看程序有没有优化的空间。可以用空间换取效率,比如使用缓存(这样服务器就可以升级内存配置)
程序可以如果可以将它们拆分到远程服务器,则不会被优化。如果他们能如果不进行拆分,该服务器的cpu核心和内存数量将会增加。
看看是不是内存不够。
如果内存不足,操作系统会频繁换页内存,导致cpu升级。这个时候,加内存。
看io是不是卡点。
如果io是卡点,优化程序,或者换ssd或者加缓存,视具体情况而定。
看看它是否其他系统造成的。
如果程序依赖一些其他系统,比如数据库或者其他服务,而这些服务因为性能和可用性出现问题,导致这个服务器的网络请求堆积,这个时候cpu也会得到提升,这个时候就要分析解决依赖的服务。
前端程序被或攻击
如果前端程序有bug或者被攻击,也会对服务器的cpu造成压力。如果bug解决了,如果被攻击了,可以根据被攻击的情况调整优化服务器。如果攻击比较大,可以用阿里云的一些网络安全产品。
看看服务器有没有被黑。
如果被入侵后安装一些后台木马,cpu负载会过高,它可以此时无法解决,请重新安装新服务器、部署程序或邀请相关安全专家或服务来解决。
确实是业务量增加造成的。
那么恭喜你,如果服务设计好一点,服务器可以线性扩展的话,瓶颈服务器就扩展了;如果服务器没有暂时不支持横向扩展,先完善服务器配置,然后逐步拆分服务器程序架构,先拆分业务,等访问量上去了再逐步微服务业务,然后数据库开始分区分表,这样压力可以平均分担,服务器的增加可以产生减压效果。
网络被人攻击了,有什么解决办法吗?
可以选择高防的云服务器。此外,CDN的使用可以有效提高网站的安全性和稳定性。由于节点分散,攻击者很难下手。攻击节点只会影响节点的缓存访问。例如,"智能调度与管理;"被鸟云加速的CDN会自动启用另一个节点,CDN服务节点的数量足够多,那么攻击者需要的流量包会呈几何级增长,所以攻击成本自然会很高。