一、前言
系统稳定性是的系统的生命线,系统的不可用不仅影响用户体验,也可能给公司带来直接经济损失。稳定性建设是个长期持续的过程,需要全面的梳理和建设,犹如木桶理论,任何一个短板都可能引起整个服务不可用。
二、稳定性问题如何衡量
稳定性一般通过SLA的业界标准进行衡量,具体是通过接口响应延迟,吞吐量,请求量,错误率等指标进行监控。国内的互联网公司大多会引入事故定级来衡量业务影响,一般分为S(公司级大的事故),P0~P4(部门级事故),Notice(部门通报)等7级分类。一般从用户进线量,订单影响量,金额损失(GMV,资损等),故障恢复时长等方面对事故进行分级,此外还会结合是否违法红线综合定级(如封禁期发布,事故等级+1)。
三、稳定性如何建设
就像把大象装进冰箱需要三步,稳定性建设也大致分为三个模块,稳定性问题发生的事前,事中,事后。
- 事前: 侧重于事前预防,未雨绸缪。是最重要也是需要花时间精力最多的一块。
- 事中: 侧重于快速止损。核心系统一般都会有1-5-10要求(1min发现问题,5min定位问题,10min解决问题)。
- 事后: 侧重于总结复盘,积累经验,避免后续在犯同样的错。
四、小结
本文作为开篇,简单介绍了下稳定性建设的意义,后续文章将会围绕稳定性问题的事前,事中,事后三个模块依次展开,深入讨论其中关键设计。