如何有效预防宕机?你需要掌握这4个方法

随着应用架构的不断演进,IT 系统也变得越来越复杂,这样就容易产生各类宕机事件。就在今年,国内外就出现了多起宕机事故。

  • 2015年1月27日,网友发现无法登陆 Facebook,页面显示「对不起,出故障了,目前正在抢修,会尽快修复」。

  • 2015年3月11日,包括 App Store、iTunes Store、Mac App Store 以及 iBooks Store 在内的一系列苹果在线商店服务,遭遇大面积服务中断。据统计事故恢复时间长达11个小时。

  • 2015年5月,陌陌、网易、支付宝、携程网、艺龙网、招商证券、同花顺、齐鲁证券接连发生故障......

宕机事件会引发:

  • 最直接或者间接的经济损失!如果是社交类、服务类的应用,就会严重影响用户体验,会造成用户流失,其后果不亚于一般的经济损失,甚至直接影响到品牌价值。

  • 宕机事件发生后,必然会耗费大量工程师的精力和时间,这也是重要的「人力资源」损失。而且频发的宕机事故,会严重影响整个团队的士气。

所以当故障发生后,最快恢复故障是第一要务。而故障恢复时间(mean time to resolve)是重要的考核指标,那么如何有效降低故障恢复时间,就是运维团队面临的最严峻挑战。

预防宕机事件的 4 个方法

降低事件和告警数量

相信不少同学有过被大量的告警邮件、短信撑爆邮箱的经历。更有甚者,专门采购一台手机来接收各种监控短信,但大量无效的干扰事件、告警短信蒙蔽了运维同学的双眼,而这样会导致一个后果,就是一些重要故障可能会被忽略掉了。因此识别和确定重要故障尤为重要,而且大量的告警信息也是不合适的。所以,我们需要持续地降低事件和告警数量,但随着 IT 系统的不断升级变更,配套的监控就会调整,此时告警数量又会增加,所以我们要进行持续的调整。

国内第一个 SaaS 模式的云告警平台 OneAlert 就可以帮助用户很好地解决这个问题,该平台集成了国内外多种主流的监控和支撑系统,在一个平台上就可以集中处理所有 IT 事件, OneAlert 可以深度分析事件趋势,并进行回顾和优化操作,从真正意义上降低事件和告警数量。

降低故障恢复时间

首先需要收集有效数据,通过 OneAlert 对事件进行收集和分析,我们发现了两种情况:事件少,处理时间长;事件多,处理时间短,这两者都不合理。前者是不出事,出事就是大事,总结起来就是一句话:「监控不到位」。后者就是频繁的小事,经常会耗费整个团队的大量精力。最合理的方式就是是事件和处理时间的平衡。中间数(median time of resolve)的处理时间应该是20-30分钟,这仅供参考。当然,最理想的状态是事件和恢复时间同步日趋减少。

降低故障响应时间

如果我们的系统发生故障,第一时间能够发现问题当然是最好的,然而如果没有成熟的管理体系,故障的发现时间会延迟很久。例如:凌晨1点发生故障,早上7点起来看手机才知道故障,就算再快处理,也是好几个小时之后的事情了。所以建立快速响应机制是非常有必要的,最理想的方式就是响应时间能够迅速下降。在这一点上,OneAlert 提供了微信和电话的报警功能,能让用户第一时间得到报警通知,可以最快响应故障问题的处理。

升级策略

当事件发生后,如果在规定时间内没有处理,而事件可能会无限期的拖延或者是遗漏,如果建立有效的升级策略和高效的管理组织,就能够避免类似问题发生。现在,OneAlert 还提供了事件升级机制,如果一线值班人员拖延或者遗漏,则会升级到二线,以此类推,从而有效地防止故障问题疏漏。

如何有效预防宕机?你需要掌握这4个方法
我们相信,如果能够有效利用上面4个数据指标,以数据驱动,并进行持续的改进和优化。就可以有效的降低故障恢复时间,而且有序的事件处理过程,也能够让我们的团队成员保持良好的体能和精神。

本文系 OneAPM 工程师编译整理。想阅读更多技术文章,请访问 OneAPM 官方博客

你可能感兴趣的:(宕机,appstore)