`
yesjavame
  • 浏览: 659573 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

一次load飙高的故障分析过程

阅读更多

这个故障已经过去好多天了,但是还是要记在这里以供别的兄弟参考。

现象:

应用服务器正常服务期间,load突然飙高,但是看访问日志却发现不了异常,应用支持的架构师说访问量没有任何异常。

分析:

load突然飙高,要么瞬间访问量突然加大,要么原来的事务中依赖的资源突然耗时导致事务处理时间突然加大。

我们的应用集群下服务器的性能还是有把握的,正常的有交易性事务的服务能力也在500万/日以上。而服务器在正常服务器间

没有做任何改动,所以首先不考虑参数优化和代码性能造成的原因。

先分析所有事务的处理时间,根本accesslog分析基本排除每次请求处理超时,也就排除请求处理中访问其它资源耗时的情况。

于是再次想到访问量,应用支持架构师说该时段内访问量正常,但是..........

我们的服务能力在高峰期有几十万/时,从整个时段内看不了异常,但如果在某几分钟内突然发生十万请求,对于整个时段是看不出来

异常的,但对于这几分钟可以有就是饱和式访问。所以我把访问量先分每十分钟一段,基本已经看出问题了,其中某十分钟的请求数是

平时的3倍,再把这十分钟按每分钟分段,结果在其中一分钟内请求超过原来的15倍。

原来基本定位了,分析一下这个时段内访问的ip看到大量的同一ip段在访问,其ua带有明显的特征,就是百度的爬虫在大量并发访问。

于是先暂时封锁这个ip的访问,服务器慢慢恢复正常。

这个故障分析过程其实就是细致,细致,再细致。应用支持架构师一直声明访问量正常,但是当排除其它可能时,我还是再次对访问量

做了分析,别看一个时段总量正常,哪怕是某几秒饱和式访问也可能引起load突然飙高。所以细致的分析是必要的。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics