我是非典型文科男号主。 关注后你能够播种最硬核的常识分享, 最乏味的互联网故事


大家好,我是“非典型文科男”。明天跟大家聊聊稳定性建设相干的事件。

没有稳定性,所有归零

7月13日B站主站、App、小程序均呈现拜访故障,页面提醒“正在玩命加载数据”。

B站崩了,才让大家发现原来“小破站”的流量如此惊人。上不了网站、没得看视频直播的“B站难民”冲向知乎、微博以及驰名游戏网站NGA。“b站崩了”“陈睿”“豆瓣崩了”等词迅速走红,甚至连B站名梗“蒙古上单”也一起霸榜微博热搜,传遍全网,颇为壮观。

23时左右故障产生,直到23时45分,B站网页端和App才初步恢复正常拜访,但像直播、会员购等板块,以及一些站内互动、评论、投币性能,还无奈失常应用。

B站的这次事件, 在全网火了,同时也让互联网人意识到稳定性的重要性。毫不夸大的说,没有稳定性,所有一些都会归零。

稳定性定义

所谓『服务稳定性』就是用户在应用咱们的服务时,服务是可响应的、正确的、高效的。

  • 可响应:app能关上、外面的各项性能点击后有响应;
  • 正确:各种性能输入的后果是正确的,合乎预期的,比方领取的金额正确,页面里该有的内容和数据都有,等等;
  • 高效:后面两个都符合要求也还存在一个响应效率的问题,如果服务响应忽然变慢,导致用户放弃应用,也是稳定性出了问题;

业务倒退的不同阶段,应用不同的稳固保障的策略。

业务倒退初期,所有人二心扑在业务简直不思考稳定性的事件。

随着业务的一直倒退, 业务规模不断扩大, 各类稳定性事件频发。 这个阶段, 个别由业务的同学负责稳定性相干的事件。

业务倒退到了绝对稳固阶段之后, 因为业务规模很大,稳固工夫的影响也越来越大。 甚至带来宽泛的舆情影响, 影响公司的品牌形象。这个阶段, 有会专门的团队负责稳定性建设。

稳定性评估

稳定性评估对于稳定性建设很重要。 稳定性评估不仅能够让团队疾速评估出目前零碎稳定性现状,而且也是稳定性团队工作评估的一个规范。

稳定性评估悖论

如果一个零碎十分稳固,体现不出稳定性团队工作价值。 如果一个零碎稳定性故障频发,稳定性团队没有做出工作价值。 这仿佛是一个悖论。 因而不能简略的应用零碎是否稳固的定性团队的工作价值。 必须找到一个可度量、可观测的指标评估零碎的稳定性。

同步流程评估

同步流程能够应用可用性指标度量。也就是几个9的稳定性。不同的可用性代表用户可应用时长占比。

可用性计算公式

目前业界有两种掂量零碎可用性的形式,一个是工夫维度,一个是申请维度,咱们先来看这两个维度的计算公式。

工夫维度 :Availability = Uptime / (Uptime + Downtime)

申请维度:Availability = Successful request / Total request

工夫维度

咱们先来看工夫维度的零碎可用性。用一句话来概括:时长维度,是从故障角度登程对系统稳定性进行评估。

以发烧为例子,首先要定义什么状况算发烧,比方体温超过37.5,是否真正发烧还要看继续时长,偶然一次温度超过37.5也不能算作发烧。

从例子能够看出,时长维度评估蕴含三个因素:

一个是掂量指标,比方体温就是掂量指标;

第二个是掂量指标,达到什么指标是失常,达不到就是异样,低于37.5 度算失常,超过 37.5 度就是异样。

然而单次测量不能阐明问题,咱们能够屡次测量, 比方 6 次中有至多 4 次低于 37.5 度才算失常,转化成比例的话就是 67%;

第三个是影响时长,比方继续超过 12 小时。

应用时长纬度评算只有系统故障才会影响可用性,这个后果计算比拟粗。偶然的接口异样或者超时没有达到故障水平不统计到不可用的范畴。

时长维度也没有思考顶峰故障和低峰故障尽管时长一样对用户造成的影响,齐全不同。

申请维度

申请维度,是从胜利申请占比的角度登程,对系统的稳定性进行评估。

申请维度的零碎可用性同样蕴含三个要害因素,第一个掂量指标,申请成功率;第二个掂量指标,成功率达到 95% 才算零碎运行失常;第三个是统计周期,比方一天、一周、一个月等等,咱们是在一个统计周期内计算整体情况,而不是看单次的。

异步流程

异步流程尽管不会间接影响业务指标, 然而如果解决工夫过长会影响用户体验。

异步流程评估能够应用SLA进行评估。SLAService Level Agreement的缩写, 示意服务对于用户的承诺。
SLA次要看两个指标:

  • SLA时长: SLA时长=申请实现工夫-申请发动工夫。SLA时长间接决定用户体验。
  • SLA完成率: SLA完成率=SLA工夫内实现的量/总的申请量。 SLA完成率影响用户满意度。

对于稳固稳定性, 明天就写到这了。 下一篇会具体介绍大公司如何去做服务稳定性。

关注《非典型文科男》,技术文章不迷路。

![](/img/bVcSBJl)![](/img/bVcSBJm)<center>  [什么是架构设计?架构设计看这篇文章就够了](https://mp.weixin.qq.com/s?__biz=MzIzNDUwMzkwNg==&mid=2247483734&idx=1&sn=bd3b956f88d7f51fc04a3f66a51713a9&chksm=e8f42adbdf83a3cd949b56cbb94462dedcef5f473c4f48582c438b2f36383d426cdc6938b013&scene=21#wechat_redirect)[Redis为什么这么快?](https://mp.weixin.qq.com/s?__biz=MzIzNDUwMzkwNg==&mid=2247483721&idx=1&sn=24b191b3d69487d056ad0717daab6400&chksm=e8f42ac4df83a3d2b1b3c54612c5460be60f51fc97c088c73969312045ee2c43365595bc3f1d&scene=21&token=322415904&lang=zh_CN#wechat_redirect)[重磅:解读2020年最新JVM生态报告](https://mp.weixin.qq.com/s?__biz=MzIzNDUwMzkwNg==&mid=2247483706&idx=1&sn=625eab1339bcfafcac207e29f79fbdab&chksm=e8f42ab7df83a3a10e803eec3106c3e4c7297a952885f22e6b2e751fbe1c92789a9bab51d2e7&scene=21#wechat_redirect)[BIO,NIO,AIO 总结](https://mp.weixin.qq.com/s?__biz=MzIzNDUwMzkwNg==&mid=2247483712&idx=1&sn=feabc22cbe7b51532ec13b6e22e7cf8c&chksm=e8f42acddf83a3db2b24752552fb0e46d05176e1e00d11e8db7b15cd6e1e34844e2cc01c5b1b&scene=21#wechat_redirect)[JDK8的新个性,你晓得多少?](https://mp.weixin.qq.com/s?__biz=MzIzNDUwMzkwNg==&mid=2247483704&idx=1&sn=527990343f8ef0402febe2dc7e9e0ff3&chksm=e8f42ab5df83a3a3775ddc302f0f5facdbec38229e4067a51ed42f9cce874ea2fc9832a6ea01&scene=21#wechat_redirect)回复“材料”,收费获取 一份独家呕心整顿的技术材料!</center>![](/img/bVcSBJn)