如何预防服务器过载问题

作者:港云互联 时间:2018-08-06
        上周说过服务器过载的原因和一些均衡服务器负载的方法,但是有很多用户私信问怎样去预防呢!今天就来说说怎样预防,要从根源上解决问题。在过载发生前的预防,就需在系统设计之初,依据具体的业务模型可以考虑预防过载的措施:

服务器

1、优化服务处理流程,降低处理资源消耗,提升自身处理能力;例如CPU消耗型服务,是否可以考虑优化算法,提升处理能力。



2、分离处理模块;将负载分担到不同的模块或者服务器;例如IO是瓶颈的服务,考虑是否可以将IO模块进行分离。



3、负载均衡;将请求量分流,降低单服请求量。



4、轻重模块分离;重要模块单独部署和处理,防止模块之间的互相影响。



5、前端防御;在前端控制请求频率,缓解后端压力;例如客户端可以做保护措施,控制聊天频率,点击操作失败,可以延时一段时间,才允许用户继续点击;前端服务发现后端出现过载问题,可选择性拒绝服务,降低后端压力。



6、使用缓冲区;缓冲区的使用,可以帮我们抵挡请求量的抖动,但缓冲区的使用同样也有很多技巧,并非越大越好。首先需要考虑內存,cpu等资源的开销,业务的模型是否需要这么大的缓冲区。例如缓冲区过大,处理完整个缓冲区,都需要几十秒,而前端等待超时则为几秒,那么每次处理缓冲区的内容,都是旧的,前端认为都是超时,服务完全不可用。另外是后端却又处理成功,会导致系统信息不对称,从而导致更为严重的问题,例如,在游戏中购买道具的场景,前端扣用户的钱,认为超时失败而不给用户发对应的物品,后端却又执行成功了,严重运营问题就此产生。



7、做好监控,及时告警;例如当CPU达到80%时,当处理请求超出一定阈值时,及时告警,做好扩容,优化等其他准备。当然依据业务模型的不同,还有很多预防的措施,依然是前述做到知底,才能够找出适合自身的方法。如果您还有什么疑问,可咨询我们的在线客服。

新人注册,即送价值满880元现金劵

立即注册>>
客服 电话 反馈 活动 回顶部

服务热线

+852-5764-9835

1对1贴心服务,7X24小时热线