前言:前几天语雀发生超越P0级别(科普:互联网公司事故等级划分)的事故,恰巧作为语雀的新用户也经历了这波事故的全过程。从下午三四点服务掉线到晚上九点钟服务恢复,可谓是超长待机了。更离谱的是本地数据也打不开,离谱程度很难让人相信这是背靠蚂蚁金融的公司。
以下内容多转自程序员鱼皮公众号,侵删。
一、公告全文
二、解读“可监控,可灰度,可回滚”
1.可监控
可监控是指能够实时地收集和展示系统运行时的数据和指标,以便开发和运维同学可以及时发现系统问题、更快进行故障排查和性能调优。需要监控的信息可以包括系统性能指标(内存、CPU、带宽等)、业务日志、错误信息等。
即对数据作可视化面板实时观测监控
2.可灰度
指灰度发布能力(又叫金丝雀发布)。将系统的新版本全量部署给所有用户之前,先仅对一小部分用户进行试用。这样可以通过收集这部分用户的反馈和监控数据就能评估新版本的稳定性,并及时进行调整和修复,从而减少对全体用户的潜在风险。
灰度发布又有很多策略。比如经典的按流量阶段性发布,先随机给 5% 的用户使用新版本,验证没问题后,再给 20%、50%、75% 的用户使用新版本逐渐放量,直到覆盖 100% 的用户。
即先发布试用版本给少部分用户体验来获得反馈
3.可回滚
就像 Git 版本控制系统回滚写错的代码一样,系统的版本也是可以回滚的。
线上系统出现问题时,可以将已经部署的新版本回退到之前的稳定版本。这样做可以快速恢复系统,减少对用户的影响,并给开发同学足够的时间来排查和修复问题。而不是线上一直故障,每分钟都是损失。
即版本回退,这个没什么好说的