如何打赢稳定性之战?

文章目录

  • 前言
  • 为什么总会出现问题呢?
  • 如何证明你的稳定性做的有效果?
  • 既是持久战,也是防御战
    • 1. 提前建筑好防御工事
    • 2. 以攻为守
    • 3. 找外部支援和配合

前言

随着23年年末期间,各大厂争先恐后的出现的各种线上故障,一时间“降本增笑”、“开猿节流”成为了大家调侃的话题,我自己所在的公司其实也因为在年中时出现了几次线上故障,而面临着系统稳定性的考验。因此,也就想借本文跟大家分享、探讨一下到底如何才能打赢稳定性之战?

为什么总会出现问题呢?

“墨菲定律”相信大家都了解:任何可能出错的事情最终都会出错。
也就是说,无论你怎么做,都无法保证系统不出问题,既然如此,那我们其实应该“躺平”?当然不是,相反,我们应该更加重视才是。
在这里插入图片描述

另一方面,我相信无论是哪家公司,当故障发生之后,对于产生故障的原因一定都会高度重视,然后进行复盘,痛定思痛之后制定解决方案,投入人力开始优化。经过一段时间之后,系统运行持续良好,似乎又变的“稳定”了,此时领导也放心了。便语重心长的说道:这一年以来,咱们在稳定性上也投入了这么多精力,现在系统的稳定性也大大提升了,该还业务上欠下的债了。于是乎,需求的压力又上了,设计上各种妥协,逻辑上各种补丁,渐渐地,质量问题又开始被淡忘了,终于又在一年后的某一天,系统故障了!
在这里插入图片描述

如何证明你的稳定性做的有效果?

问:这半年我们什么也没做,也没出啥问题,所以,我们是不是有点杞人忧天了?
答:不出问题,可能只是你运气好而已。

问:自从上次优化后,系统半年都没出问题了,是不是证明我们做的有效果了?
答:不一定,可能只是你的运气好而已。

问:你们做了这么多,怎么还是出问题了呢?你们做的这些到底有没有用?
答:可能我们不做,问题只会更严重。

要向第三者证明你做的这些稳定性是有效果的,其实还是挺难的,毕竟做的都是无法直接看到结果的事,你就很难引起别人对你所做的事的重视,扁鹊与魏文侯的故事,则能很好的说明这一点。

据史书记载,魏文侯曾向扁鹊询问他家中兄弟三人的医术水平。扁鹊回答说他的长兄医术最高,中兄次之,而他自己则是最差的。魏文侯问这是为什么,扁鹊解释说他的长兄治病是在病情发作之前,一般人不知道他能事先铲除病因,所以他的名气无法传出去。而他的中兄治病是在病情初起之时,一般人以为他只能治轻微的小病,所以他的名气只及于本乡里。而他自己治病则是在病情严重之时,一般人都能看到他在经脉上穿针管放血、在皮肤上敷药等大手术,所以以为他的医术高明,名气因此响遍全国。
在这里插入图片描述

大家都非常敬佩救火英雄,但我们也不能忘记那些为了防止让火情发生,以及在火情发生后能将有效将火情控制住的那些人所做的工作,研发稳定性保障工作正是如此!
我们所做的工作就是为了降低发生的频率以及发生后的影响程度,怎么证明你做到了?对不起没法证明,出名的永远只能是扁鹊,背后工作者就需要有奉献精神,不被理解是常态,大家也许偶尔会想起你的好,但你一定无法成为那颗耀眼的星。

既是持久战,也是防御战

系统稳定性之战,我认为既是一场持久战,也是一场防御战,持久战很好理解,正如前面在阐述“为什么总会出现问题”这个观念上,就足以说明。
那为什么又说是一场防御战呢?防御战一般怎么打?

  1. 提前建筑好防御工事
  2. 以攻为守
  3. 找外部支援和配合
    以上3点,也正是做好稳定性工作的方法!

1. 提前建筑好防御工事

在这里插入图片描述

提前建筑好防御工事的关键在于,你能坚持多久,毫无疑问大家都知道要建筑好防御工事,但要建到什么程度?年久失修后,要不要更新换代?这才是问题的关键。
因为我习惯跑步,也常有人问我,跑步对减肥或身体健康到底有没有好处?一开始你可能会觉得奇怪,跑步对身体有益,这难道还需要证明吗?但你会发现有些人跑了1,2个礼拜后,发现体重也没变化,身体也没感觉变好,甚至还会因为跑步后抵抗力下降出现感冒、发烧等症状,也有一些人急功近利,在1,2个礼拜内,不顾自己身体状况,拼了命的跑,导致身体出现损伤。
想想,这些是不是与我们做稳定性工作之后所期望的结果很像呢?说实话,要想通过跑步看到身体的变化,也是需要以年为单位来衡量。稳定性工作同样如此,稳定性工作靠的不是激情,不是打个兴奋剂,突击几个月就能完事了,而是要在思想上统一意识,要在每一次产品设计、每一次需求迭代这样的常规工作上做功夫,当你意识到自己放松时,要能立即提醒自己,保持警惕!

2. 以攻为守

有时候我们也需要通过招兵买马来主动提升团队战斗力,并不断通过培训、分享等形式营造一个良好的技术团队的探究氛围,这样才能时刻保持着我们的战斗力!
除此之外,太平久了也难免会松懈,京东在经营过程中有一个很重要的理念,就是保护好老二老三。其中一个重要的原因就是因为一旦你没有了竞争的压力,那么你可能也会慢慢变得消沉!
所以,有一种有效的方式就是自己攻击自己,没有对手就自己创造一个对手出来,同样的,没有问题就自己制造点问题出来,混沌工程的出现很好的说明了这一点。
请记住,无论采取何种方式,以攻为守强调的是通过一种积极的防御态度,让自己能够掌握更多的主动权、控制权!

3. 找外部支援和配合

最后,正如前面所说,除了研发内部的松懈怠慢之外,外部支持程度同样也会有类似的现象,外部支持的态度也会在一定程度上左右防御工程的建筑质量,领导是否愿意持续投入去做这些看不到收益的事?业务部门是否愿意持续配合你们做升级改造?
所以,稳定性之战是一场没有硝烟的战争,拼的不仅仅是能力,更重要的是在拼整个公司的意志力与决心!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/321818.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

highlight.js 实现搜索关键词高亮效果 ,显示匹配数量及切换显示功能

先看效果&#xff1a; 更新&#xff1a;增加切换显示 折腾了老半天&#xff0c;记录一下 注意事项都写注释了 代码&#xff1a; <template><div class"absolute-lt wh-full overflow-hidden p-10"><div style"width: 200px"><el-…

学网络必懂的华为CSS堆叠技术

知识改变命运&#xff0c;技术就是要分享&#xff0c;有问题随时联系&#xff0c;免费答疑&#xff0c;欢迎联系&#xff01; 厦门微思网络​​​​​​https://www.xmws.cn 华为认证\华为HCIA-Datacom\华为HCIP-Datacom\华为HCIE-Datacom Linux\RHCE\RHCE 9.0\RHCA\ Oracle OC…

【Python数据分析系列】实现txt文件与列表(list)相互读写转换(源码+案例)

这是Python数据分析系列原创文章&#xff0c;我的第199篇原创文章。 一、问题 平时在做数据分析或者程序开发的时候&#xff0c;需要将中间的一些结果或最后的处理结果保存下来&#xff0c;比如保存为txt格式的文本文件&#xff0c;这就涉及列表与txt之间的一种读取和写入操作…

【LV13 DAY16 轮询与中断】

轮询实现按键实验 #include "exynos_4412.h"int main() {//GPX1_1设置为输入模式//GPX1.CONGPX1.CON & (~ (0XF<<4));while(1){if(!(GPX1.DAT&(1<<1))){printf("key pressed\n");while(!(GPX1.DAT&(1<<1)));}else{}}return…

1127: 矩阵乘积

题目描述 计算两个矩阵A和B的乘积。 输入 第一行三个正整数m、p和n&#xff0c;0<m,n,p<10&#xff0c;表示矩阵A是m行p列&#xff0c;矩阵B是p行n列&#xff1b; 接下来的m行是矩阵A的内容&#xff0c;每行p个整数&#xff0c;用空格隔开&#xff1b; 最后的p行是矩…

【期末不挂科-单片机考前速过系列P11】(第十一章:15题速过串行口的工作原理和应用)经典例题盘点(带图解析)

前言 大家好吖&#xff0c;欢迎来到 YY 滴单片机速过系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过单片机的老铁 主要内容含&#xff1a; 欢迎订阅 YY滴C专栏&#xff01;更多干货持续更新&#xff01;以下是传送门&#xff01; YY的《C》专栏YY的《C11》专栏…

【模型评估 02】ROC曲线

二值分类器&#xff08;Binary Classifier&#xff09;是机器学习领域中最常见也是应用最广泛的分类器。评价二值分类器的指标很多&#xff0c;比如precision、recall、F1 score、P-R曲线等。相比而言&#xff0c;ROC曲线有很多优点&#xff0c;经常作为评估而知分类器最重要的…

增强FAQ搜索引擎:发挥Elasticsearch中KNN的威力

英文原文地址&#xff1a;https://medium.com/nerd-for-tech/enhancing-faq-search-engines-harnessing-the-power-of-knn-in-elasticsearch-76076f670580 增强FAQ搜索引擎&#xff1a;发挥Elasticsearch中KNN的威力 2023 年 10 月 21 日 在一个快速准确的信息检索至关重要的…

Servlet JSP-实现简单的登录功能

本篇文章讲解如何使用Servlet-JSP-实现简单的登录功能。我们在进行Servlet和JSP实现简单登录功能的过程中&#xff0c;首先通过Eclipse创建了一个Maven项目&#xff0c;这为我们的Web应用提供了良好的项目管理和依赖管理。接下来&#xff0c;我们解决了新建项目时可能出现的报错…

CDN内容分发网络

1、CDN的含义 1.1 什么是CDN&#xff1f; CDN是内容分发网络&#xff08;Content Delivery Network&#xff09;的缩写。它是一种通过将内容部署到全球各地的服务器节点&#xff0c;使用户能够快速访问和下载内容的网络架构。 简单来说&#xff0c;CDN通过将内容分发到离用户更…

鸿蒙应用开发学习:改进小鱼动画实现按键一直按下时控制小鱼移动和限制小鱼移出屏幕

一、前言 近期我在学习鸿蒙应用开发&#xff0c;跟着B站UP主黑马程序员的视频教程做了一个小鱼动画应用&#xff0c;UP主提供的小鱼动画源代码仅仅实现了移动组件的功能&#xff0c;还存在一些问题&#xff0c;如默认进入页面是竖屏而页面适合横屏显示&#xff1b;真机测试发现…

【纯CSS特效源码】(二)精美的立体字

1.漂浮感立体 关键处&#xff1a; text-shadow:2px -2px white, -6px 6px gray;给字体添加了两层shadow&#xff0c;右上角白色提亮&#xff0c;左下角灰色阴影。 参数解释&#xff1a;例子中2px -2px white&#xff0c;代表右上角白色 第一个参数2px&#xff1a;正数表示从左…

C++ 完成Client分页显示log

分页显示t_log 1、获取用户的输入 1.1、写一个Input成员函数&#xff0c;处理输入进来的语句 std::string XClient::Input() {//清空缓冲//cin.ignore(4096, \n);string input "";for (;;){char a getchar();if (a < 0 || a \n || a \r)break;cout <<…

基于鸿蒙HarmonyOS 元服务开发一款公司运营应用(ArkTS API 9)

前言 最近基于Harmony OS最新版本开发了一个作品&#xff0c;本文来详细讲解一下&#xff0c;如何我是如何开发这个作品的。以及如何使用OpenHarmony&#xff0c;基于ArkTS&#xff0c;API 9来开发一个属于自己的元服务。 废话不多说&#xff0c;我的作品名称叫做Company Oper…

Spring Boot 中实现文件上传、下载、删除功能

&#x1f3c6;作者简介&#xff0c;普修罗双战士&#xff0c;一直追求不断学习和成长&#xff0c;在技术的道路上持续探索和实践。 &#x1f3c6;多年互联网行业从业经验&#xff0c;历任核心研发工程师&#xff0c;项目技术负责人。 &#x1f389;欢迎 &#x1f44d;点赞✍评论…

【RPC】序列化:对象怎么在网络中传输?

今天来聊下RPC框架中的序列化。在不同的场景下合理地选择序列化方式&#xff0c;对提升RPC框架整体的稳定性和性能是至关重要的。 一、为什么需要序列化&#xff1f; 首先&#xff0c;我们得知道什么是序列化与反序列化。 网络传输的数据必须是二进制数据&#xff0c;但调用…

Jenkins-Maven Git

整合Maven 安装GIT #更新yum sudo yum update #安装git yum install git 安装Maven插件,在插件管理中心&#xff1a; 配置仓库 配置密码认证 我们可以在这个目录下看到Jenkins 帮我们拉取了代码 /env/liyong/data/docker/jenkins_mount/workspace/maven-job 配置maven打包…

江科大STM32 下

目录 ADC数模转换器DMA直接存储器存取USART串口9-2 串口发送接受9-3 串口收发HEX数据包 I2CSPI协议10.1 SPI简介W25Q64简介10.3 SPI软件读写W25Q6410.4 SPI硬件读写W25Q64 BKP、RTC11.0 Unix时间戳11.1 读写备份寄存器BKP11.2 RTC实时时钟 十二、PWR12.1 PWR简介12.2 修改主频1…

Scratch优秀作品飞翔小鸟

程序说明&#xff1a;在无尽的划痕堆中飞驰而过随着你越来越多地飞进迷宫般的街区&#xff0c;平台变得越来越难。 演示视频 scratch飞翔小鸟 其实这就是一个类似像素小鸟的程序&#xff0c;只不过水管角色就地取材&#xff0c;使用scratch里面的积木图片拼成了水管&#xff0…

爬虫案例—抓取豆瓣电影的电影名称、评分、简介、评价人数

爬虫案例—抓取豆瓣电影的电影名称、评分、简介、评价人数 豆瓣电影网址&#xff1a;https://movie.douban.com/top250 主页截图和要抓取的内容如下图&#xff1a; 分析&#xff1a; 第一页的网址&#xff1a;https://movie.douban.com/top250?start0&filter 第二页的…