建立互联网可靠性工程体系框架的思路

简介: 【6月更文挑战第24天】构建互联网SRE框架的核心是理解和应用软件可靠性工程,结合传统方法与互联网服务的特点。

建立可靠性工程体系框架的重点是研究复杂系统是如何被可靠地构建起来、系统是如何工作、故障是如何发生发展并被消除的。

1、理解可靠性和互联网SRE的关系

认识到互联网服务的可靠性/稳定性的工作本质就是软件可靠性工程,而不是单项的开发技术和运维技能。


传统软件可靠性深入研究了软件可靠性的诸多根本问题,只是限于软件形态、发展阶段、关注重点不一样,无法适应互联网软件产品的新情况,但其核心的思路是可以借鉴的。软件可靠性工程研究和实践已经基本跳出纯模型论,更加注重工程实践,在软件可靠性设计、分析、测试、工程管理等方面进行了较为系统的研究,在某些软件中取得了显著成效。虽然其方法不能完全适用于互联网,但其系统性的分析方法和研究成果值得我们学习借鉴,例如如何对影响软件可靠性的因素进行研究、如何开发可靠的软件、如何验证软件的可靠性方法等。

2、借鉴传统可靠性工程的关键方法

在学习传统可靠性和互联网可靠性工作的基础上,参考、借鉴并整合为新的可靠性工程框架来指导互联网可靠性工作。

  • 结合软件生命全周期进行可靠性工作

可靠性工程是为了达到系统可靠性要求而进行的有关设计、管理、试验、开发和生产等一系列工作的总和,它与系统整个生命周期内的全部可靠性活动有关。软件有自己的生命周期,运维是其中一个阶段。可靠性要跨越运维和开发阶段,研究从软件的需求、设计、开发、测试、交付部署/发布、持续运行到下线等各个阶段的可靠性工作。


预防故障是最重要的第一步,在设计阶段就把故障消灭掉是成本最低的,也是最能体现公司架构和技术能力的,好的设计可以实现“一次把事情做正确”的目的。很多公司都有架构师,要对网站服务进行高可用、高可靠的设计。在预防阶段有很多已知的技术和方法,如可靠性设计方法、单元测试、代码审查、设计评审、可靠性估计、故障模式及影响分析等,充分测试是为了预防和减少把故障带到线上。这些技术方法是为了尽可能在早期把存在的Bug、故障隐患暴露并消除。

  • 对可靠性过程和结果进行定性与定量的分析评估

现代互联网软件可靠性目前还是以工程实践为主,缺少通过定性定量分析、度量和管理的方法,也有人借鉴传统的定量指标MTBF、MTTR等,不过在互联网行业的使用范围和认可程度并不高。传统可靠性的学科式研究中大量使用了定量分析,虽然这些定量分析方法和指标不太适用于互联网软件,但我们可以参照其方法研究适用于互联网时代的定性、定量分析方法和指标,改变当前行业只讨论工作方法而缺少量化评估效果的现状。

3、将物理可靠性的6种能力作为通用的可靠性工程框架

物理可靠性工程中的部分方法与互联网软件可靠性方法非常类似,如可靠性设计能力、分析能力、可测试能力、保障能力、修复能力、环境适应能力、人机可靠性等。结合互联网的实践特点,我们抽象出互联网软件可靠性最重要的6种能力,包括可靠性的设计能力、观测能力、修复能力、保障能力、可靠性试验与反脆弱能力、可靠性管理能力等,这套框架能把当前所流行的绝大部分稳定性方面的实践方法纳入进来,也充分参照了传统物理可靠性的工程体系,具有一定的完备性,同时整合了传统软件可靠性工程研究的影响软件可靠性的因素及应对方法。

相关文章
|
供应链 安全 算法
FSC公链金融项目开发特性分析
FSC公链是基于FSC技术建构的公共区块链网络
|
机器学习/深度学习 人工智能 供应链
D1net阅闻:北京:实施大模型底层支撑性技术筑基工程 以Chiplet技术进步弥补先进工艺技术代差
D1net阅闻:北京:实施大模型底层支撑性技术筑基工程 以Chiplet技术进步弥补先进工艺技术代差
131 0
|
数据采集 运维 监控
谈谈典型的数据治理体系框架
以规范的方式来管理企业的数据资产已经被广泛接受和认可,但还需要组织架构、原则、过程和规则,以确保数据管理的各项职能得到正确的履行。
谈谈典型的数据治理体系框架
|
Go 区块链 数据安全/隐私保护
魔豹联盟2.0系统项目开发技术方案(技术原理成熟方案)
魔豹联盟2.0系统项目开发技术方案(技术原理成熟方案)
218 1
|
数据安全/隐私保护
阐述佛萨奇2.0项目系统开发逻辑技术讲解方案
阐述佛萨奇2.0项目系统开发逻辑技术讲解方案
124 0
|
存储 运维 监控
容器云PaaS平台建设中应关注的重点和难点
对于企业级容器云PaaS平台,在多集群管理的模式下,每一个功能都会变得非常复杂。对于建设中的重点和难点,从以下多个方面进行了详细的方案分析和设计实现。
|
测试技术 程序员
|
安全 自动驾驶 物联网
5G 标准化现状|带你读《5G无线网络规划与设计》之二
推动 5G 加速部署的关键因素,同时也是 5G 商用部署的主要挑战和障碍。面向急速增长的移动数据流量需求,移动运营商面临着前所未有的巨大压力。随着业务多样性的发展,运营商的竞争对手在类型和数量上都在向全 IP 世界扩展。这些新的竞争对手有些可以以更低的成本提供服务,有些具有更灵活的开发环境,便于加快产品上市的速度。
5G 标准化现状|带你读《5G无线网络规划与设计》之二
|
安全 测试技术
构建可靠系统的原则与实践
随着阿里技术的发展,我们的技术系统越来越成为社会的基础设施,对于这些系统的可靠性要求也就越来越高。但是实际上很多的基础的产品和系统确仍然会出现一些稳定性问题,那么如何才能构建可靠的系统呢?是不是制定非常严格而细致的规则就可以做出可靠的系统呢? # 航空业的教训 在回答这个问题之前,我们先来看看对于系统可靠性要求非常高的航空业是怎么做的?美国的FAA是在航空安全领域事实上的权威,为了保证航空
13151 0
|
监控 BI 数据中心
从“1248理论”来解析OA平台系统的应用体系
从一套信息化系统的价值作用来看,不仅仅需要基本的管理理论作为支撑,还需要相应的应用落脚执行体系。为了方便理解,下面主要以“1248 应用理论”的方式来描述针对OA平台系统在组织的实现应用框架,请先参考下图。
1449 0