稳定性建设

开篇

SLA(service-level agreement,即 服务级别协议)也称服务等级协议,经常被用来衡量服务稳定性指标。业界高可用的标准是按照系统宕机时间来衡量的,通常被称作“几个 9”,9 越多代表服务全年可用时间越长,服务也就越可靠,即停机时间越短。通常作为服务提供商与受服务用户之间具体达成承诺的服务指标。

一、稳定性建设是什么

简单理解,系统稳定性本质上是系统的确定性应答。

从另一个角度解释。稳定性建设的目标是尽可能的保证SLA.

二、为什么要做稳定性建设

稳定性有多重要,我们来看几个由于服务稳定性故障造成影响的案例:

  • 2023年11月12日阿里全线故障,用户订外卖,网购均受影响,阿里云信任危机。
  • 滴滴2023年11月27日夜间发生故障,给广大用户造成不便,公司经济损失且补发优惠券。

服务稳定性对于企业来说非常重要,不仅仅会对企业带来直接的经济损失,甚至会对行业、人们的生活造成非常严重的影响。所以说服务稳定性建设的意义非常重大。

三、影响稳定性的因素

  • 人为因素

不合理的变更(50%)、意识问题、外部攻击等等

  • 软件因素

系统依赖、架构设计问题、代码bug、设计漏洞、GC问题、线程池异常

  • 硬件因素

网络故障、机器故障、DB等中间件问题

下面就是对症下药,首先是故障前的预防,其次是故障后的快速恢复能力,下面我们就聊聊几种常见的解决思路。

四、怎么做稳定性建设

稳定性建设4大抓手

降发生

从开发阶段开始,到最后的代码上线,这整个过程中,对各个阶段进行质量把控,将所有异常排除在发生之前

提感知

故障在所难免,所以一定要做到,一旦发生故障,能够及时且精准的告警!

快响应

在接到异常告警之后,能够快速响应、快速定位、快速止损,不要总想着这是谁的锅、如何解决问题,一定要先止损

做复盘

解决了故障,也一定要复盘,为了避免以后再次出现此类事故

知识沉淀到经验库里面

产生故障的原因。

3+1保障

良好的系统架构和实现

完备的团队研发运维流程机制

技术同学良好的意识和能力

良好的研发项目管理

监控 容灾 降级 服务治理

四、总结

1、一个好的软件架构,应该遵循高性能、高可用、易扩展 3 大原则,其中「高可用」在系统规模变得越来越大时,变得尤为重要。

2、对于一个动态演进的系统而言,我们没有办法将故障发生的概率降为0,预防和缩短故障的恢复时间才是我们追求的目标。

3、适合的才是最好的。提升稳定性的同时,维护成本、机器成本等也会跟着上涨,我们也不用一味的追求可用性,需要结合系统的业务SLA要求权衡。

如何做好稳定性和高可用保障是一个很庞大的命题,本篇文章没有太多的深入细节,只聊了整体的一些思路,主要是为了大家在以后的系统高可用建设过程中,有一套系统的框架可以参考

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux运维工具-ywtool默认功能介绍

提示:工具下载链接在文章最后 目录 一.资源检查二.日志刷新三.工具升级四.linux运维工具ywtool介绍五.ywtool工具下载链接 一.资源检查 只要系统安装了ywtool工具,默认就会配置上"资源检查"的脚本资源检查脚本的执行时间:每天凌晨3点进行检查资源检查脚本的检查内容…

如何使用公网地址远程访问内网Nacos UI界面查看注册服务

文章目录 1. Docker 运行Nacos2. 本地访问Nacos3. Linux安装Cpolar4. 配置Nacos UI界面公网地址5. 远程访问 Nacos UI界面6. 固定Nacos UI界面公网地址7. 固定地址访问Plik Nacos是阿里开放的一款中间件,也是一款服务注册中心,它主要提供三种功能:持久化…

Oracle 如何将txt文件中的数据导入数据库

使用文本导入器,可以将ASCII文件导入数据库。支持大多数面向行的格式,如逗号和制表符分隔的字段。导入程序将尝试自动确定文件格式,因此大多数时候您不会抰 需要定义任何内容,只需选择文件,选择一个表,然后…

三级分销数据库设计

一,数据结构 二,查询方法 1.mysql递归查询 获取id9的所有上级 r : 9 设置自己所要搜索子节点的id SELECTT2.* FROM(SELECTr AS _id,( SELECT r : pid FROM sj_user WHERE id _id ) AS 2v2,l : l 1 AS lvl FROM( SELECT r : 9 ) vars, -- 查询id为…

C语言 BMP图片的旋转与缩放

目录 一、bmp文件头、文件信息头、位图实际数据的数据结构定义 二、源BMP文件信息的读取 三、实际位图数据的旋转、缩放操作 四、生成转换过后的新位图文件 #include <stdlib.h> #ifndef PHOTODEAL_H #define PHOTODEAL_H #pragma pack(1) typedef struct tagBm…

基于React低代码平台开发:构建高效、灵活的应用新范式

&#x1f525;博客主页&#xff1a; 小羊失眠啦. &#x1f3a5;系列专栏&#xff1a;《C语言》 《数据结构》 《C》 《Linux》 《Cpolar》 ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&…

Qt 实现橡皮擦拭显示图片

1.简介 在一些游戏中看见类似解密破案的效果&#xff0c;使用手触摸去擦拭图片上的灰尘&#xff0c;然后显示最终的图片&#xff0c;所以也想试试Qt实现的效果。大家有自己想做的效果&#xff0c;都可以尝试。 以下是效果展示图。 可以控制橡皮擦的大小&#xff0c;进行擦拭…

资深测试总结,接口自动化测试常用配置文件(超细整理)

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 1、常用的配置文件…

洗地机怎么选?2024年洗地机推荐,希亦、添可、追觅、石头哪一款清洁力更好?

洗地机是一款可以一遍搞定扫地和拖地一系列动作的清洁神奇&#xff0c;它能让我们真实的感受到打扫屋子是一件很减压的事情&#xff0c;但是目前市面上的洗地机太多了&#xff0c;大家都不知道怎么样的才算好&#xff0c;希亦、添可、追觅、石头洗地机值不值得买&#xff1f;我…

使用CSS制作动态的环形图/饼图

使用纯 CSS Animation conic-gradient 实现一个环形图。 饼图的实现思路和环形图一样&#xff0c;去掉中间的圆形遮盖 after 伪类元素即可。 一、构建基础样式 构建圆形节点和中间的遮盖元素。 <style>body {background-color: rgb(130, 226, 255);}.circle {top: 16…

5年爬到半山腰,我后悔了吗?

&#x1f345; 视频学习&#xff1a;文末有免费的配套视频可观看 &#x1f345; 关注公众号【互联网杂货铺】&#xff0c;回复 1 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 软件测试是一个付出就有回报的工作&#xff0c;可能很多人会说软…

摄像头拉流低延迟(90ms内)实践和技术讲解

背景 作为网络摄像头拉流客户端&#xff0c;或者其他类型的流媒体播放而言&#xff0c;低延迟总是我们追求的重点性能要素。有一些低延迟方法可以在推流端设置&#xff0c;但倘若像摄像头这种场景&#xff0c;根本就无法控制摄像头端的自身延迟&#xff0c;只能从接收端动手。…