稳定性建设(一)

前言

  对于大规模的核心系统来说,安全生产是基本要求。相比to c的消费者业务来说,to b的稳定性要求更高。to b的业务中稳定性是业务。
  稳定性、服务高可用方面在学校和很多公司来说,都缺乏很多经验和培养,大家都是从零开始摸索怎么做稳定性建设。特启了一系列文章来说明;

服务端稳定性体系

  重点介绍服务端稳定性需要考虑的关键要素和策略,重点介绍变更之外的稳定性保障。
主要包括:
1、事前:消除潜在风险,确保系统稳定运行不出问题。上医治未病,所以这一点要重点投入。
2、事中:监控快速感知和响应的体系,包括风险的感知、控制,并且团队要训练有素才能最快速度消除风险。
3、事后:深度复盘和改进,这里不深入讨论;


稳定性

变更过程中的风险更多来自变更前的设计、代码质量、review、自动化测试等,而不是仅仅依靠灰度、监控和回滚。

稳定运行

1、机器健康度:磁盘空间、网络抖动、流量不均引起单机风险等。尤其是磁盘空间满,对于成熟团队来说应该是低级事故,不应该出现。应该有完善的平台、机制确保一定不会出现磁盘满。
2、容量规划:计划中的大促等,需要提前规划好容量。在规划前需要准确压测摩的系统性能数据。
3、自愈能力:这是一项高级但也非常必要的能力。可以举一个典型的发面案例:系统异常导致内存中的任务队列大量堆积,异常清除后还在持续消费内存中堆积的任务,必须人工重启来干预。这种情况下,应该设置合理的队列最大长度、丢弃过期的任务、背压等手段来实现自愈,避免依赖人工干预导致故障恢复时间拉长。
4、极限压测:理想的压测应该是常态化进行极限场景压测、每次变更前后进行压测、定期进行线上流量回放压测以及时发现流量特征变化对性能的影响。实际中,因为自动化程度不够高,不能完全做到,但是要持续往这个方向发展。

风险感知

1、监控:监控这部分需要单独做系统性设计,后面单独分享。原因是平时还是经常看到核心系统都有监控,但是监控的覆盖面、问题诊断能力严重不足。做的稍微好点的有调用量、成功率、耗时等监控,做的差的只有几个调用量的监控根本不具备问题感知能力。
2、预警:预警首先要覆盖所有故障场景,直接造成故障风险的一定要有电话告警。而且预警要持续优化,降低到大家每条都能处理的程度,过度告警等于没有告警了。
3、反馈:收到预警后要能快速处理,可以值班也可以由指定人跟进。

风险控制

1、容灾切换:如果有同城容灾、异地容灾、单元化、区域化等容灾手段的话,切换到其他可用区是一个可用快速恢复服务的手段。
2、限流:当DB出现大量慢sql,突发流量造成容量风险时候,限流是避免系统彻底崩溃的有效手段,限流能力必须提前做好建设。
3、降级:降级通常会有一定的牺牲,但是可以确保核心的功能可用,比如牺牲一定体验。
4、故障隔离:通常是最后没有办法的时候的手段,比如新设备上线后会在很长一段时间里会有独立的接入点,避免新设备的访问异常造成无线大的访问冲击影响其他存量设备接入。

团队训练有素

  以上的风险感知、风险控制手段能否有效执行,取决于团队是否训练有素。平时头脑清醒,重大故障期间慌的不知所措时很容易出现的,即使有预案也想不起来或者不敢执行。
1、应急预案演练:前面讲过,只有反复演练过的故障才敢真的去执行,尤其是有损预案。
2、突袭演练:突袭更接近于真实场景的演练,日常可以团队内互相突袭,也可以找风险团队协助联动做红蓝对抗突袭。
3、故障响应演练:专业的故障响应过程,一定要有多个训练有素的角色高效配合才能最大限度压缩故障时长,要有指挥员负责整体把控、资源协调,通讯员负责信息收集、对组织内和客服甚至公关口径及时传递有效信息,要有专人去执行预案尽快恢复服务,也有要人去分析原因确保元无法消除影响后进一步处理。最典型的不专业表现是故障后所有人都扑上去寻找原因,这是大忌。如果看过足够多集团重大故障的话,应该能够发现我们有不少的故障原因是十几个人数天时间才能真正分析清楚的。故障期间,原因分析之要能满足故障恢复即可,不要强迫自己一定要分析到根本原因。比如服务异常后,定位到是db异常,这个时候如果有提前db降级预案,就可以快速评估是否执行了,而不是分析db异常的根本原因,我们有些db异常最后分析到是mysql内核层的bug,如果要分析到这种级别的根本原因才能恢复服务那对业务来说绝对是灾难。

稳定性建设(一)--服务端稳定性体系
[稳定性建设(二)--稳定性之监控]
[稳定性建设(三)--稳定性之系统自愈能力]
[稳定性建设(四)--稳定性之应急预案建设]
[稳定性建设(五)--稳定性之预案规范]
[稳定性建设(六)--稳定性之统一错误日志规范]
[稳定性建设(七)--稳定性之故障应急处理流程]

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,222评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,455评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,720评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,568评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,696评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,879评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,028评论 3 409
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,773评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,220评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,550评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,697评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,360评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,002评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,782评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,010评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,433评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,587评论 2 350