可用性和可靠性的区别

2023-05-16

首先,这两个属性都是质量(可维护性)的一部分。

按照书上的定义,

可靠性(reliability):在规格时间间隔内和规定条件下,系统或部件执行所要求功能的能力。例如:
QA1:在客户端与服务器端通信时,如果网络故障,系统不能出现故障。
可用性(availability):软件系统在投入使用时可操作和可访问的程度,或能实现其指定系统功能的概率。例如:
QA2:系统的可用性要达到98%。

实话说我一直想吐槽这个定义,说得未免太模糊了一点。尤其是可用性的定义,用术语解释术语可太秀了。后来在看分布式系统的时候,看到了一个解释:

可用性被定义为系统的一个属性,它说明系统已准备好,马上就可以使用。换句话说,高度可用的系统在任何给定的时刻都能及时地工作。
可靠性是指系统可以无故障地持续运行,是一个持续的状态。与可用性相反,可靠性是根据时间段而不是任何时刻来进行定义的。
如果系统在每小时崩溃1ms,那么它的可用性就超过99.9999%,但是它还是高度不可靠。与之类似,如果一个系统从来不崩溃,但是每年要停机两星期,那么它是高度可靠的,但是可用性只有96%。

我觉得这个解释说得很好。可靠性是一个持续性的状态,更多地强调系统自身;而可用性是一个短暂的状态,更多地强调外部的触发。就好比一个人,你找他的时候能不能找到,这是可用性;而他干活靠不靠谱,则是可靠性。一个人如果随叫随到,但是时不时偷懒,就是高可用、低可靠;而如果他经常找不到人,但干活很负责,就是低可用、高可靠。其实就是上面说的那个例子了。

再回到书上的例子去。为什么“网络故障,系统不能出现故障”是可靠性?其实也是比较显然的。这是一个持续的过程。网络故障的时候,系统不出现故障,维持了正常运行状态,正是高可靠的表现;而且,系统不受外界影响,体现出内在的稳定性,也是可靠性的隐藏要求吧。

从某种程度上,可用性包括了可靠性。如果不可用,根本谈不上可靠。有一个定义:

平均故障间隔时间(MTBF,Mean Time Between Failure),是指相邻两次故障之间的平均工作>时间,是衡量一个产品的可靠性指标。
平均修复时间(MTTR,Mean Time To Repair),是描述产品由故障状态转为工作状态时修理时间的平均值。在工程学中,MTTR是衡量产品维修性的值,在维护合约里很常见,并以之作为服务收费的准则。GB/T3187-97对可用性的定义:在要求的外部资源得到保证的前提下,产品在规定的条件下和规定的时刻或时间区间内处于可执行规定功能状态的能力。它是产品可靠性、维修性和维修保障性的综合反映。
Availability = MTBF / (MTBF + MTTR)

从这里也可以看出,可靠性强调的是一个持续状态。

参考资料:

《软件工程与计算(卷二):软件开发的技术基础》

分布式可用性和可靠性区别

如何理解“可靠性”和“可用性”?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

可用性和可靠性的区别 的相关文章

随机推荐

  • combat 仿真系统资料

    扩展防空仿真系统 xff08 EADSIM xff09 EADSIM培训教材 Teledyne Brown Engineering公司 书籍 xff1a 大型仿真系统 目前市面上能够使用的作战仿真系统 DCS world 新手入门指南
  • 阿豪找工作

    2021年 财富 世界500强揭晓 xff01 中国143家公司上榜 2021世界500强 2021中国500强 选择国企 私企 外企 xff0c 5年后的差距有多大 xff1f 国企和央企的区别 国企包括中央所属国有企业和地方所属国有企业
  • pycharm快捷键

    pycharm快捷键
  • 大规模多智能体强化学习资料整理

    多智能体中存在一些问题和一些可行解决方法 2020年 xff0c Multi Agent RL领域的主流研究方向有哪些 xff1f 深度强化学习 初学者入门介绍 xff08 通俗易懂 xff09 多智能体强化学习 新手入门算法论文大总结 多
  • python路径拼接os.path.join()函数的用法

    os path join 函数 xff1a 用来连接路径名组件 1 如果各组件名首字母不包含 则函数会自动加上 2 如果有一个组件是一个绝对路径 xff0c 则在它之前的所有组件均会被舍弃 3 如果最后一个组件为空 xff0c 则生成路径以
  • linux python解决中文字体Font family [‘sans-serif‘] not found. Falling back to DejaVu Sans

    点击此处
  • Python导入自定义模块方法

    添加链接描述
  • 课程学习邂逅强化学习

    一篇综述带你全面了解课程学习 Curriculum Learning 课程强化学习 课程学习邂逅多智能体强化学习
  • 常见的几种白盒测试

    2019 6 26 补充与修正了短路相关的内容 2019 9 16 修正了短路部分的错误 xff0c 顺便去掉了用词不合适的前言 目前我所了解到的逻辑覆盖 xff08 而非路径覆盖 xff09 型的白盒测试大概有这几种 xff1a SC x
  • 元强化学习

    元强化学习 即可以迁移到训练阶段未见过的任务中
  • 深度学习中的标量、向量、矩阵和张量的区别

    在深度学习中 xff0c 张量 xff08 tensor xff09 的维数就是张量的阶数 0维的tensor就是标量 xff0c 就是一个单独的数 xff1b 1维的tensor就是向量 xff0c 就是一列数 xff0c 其中的每一个元
  • word使用技巧

    删除文档中多余的空白页 在word中插入图表目录 xff08 插图清单 表格清单 xff09 step1 先设置图表目录 xff08 引用 插入题注 xff09 step2 然后在目录页面点击 xff08 引用 插入表目录 xff09 st
  • tf.AUTO_REUSE的作用

    Tensorflow复用计算图 reuse 61 tf AUTO REUSE tf AUTO REUSE作用
  • 对多智能体强化学习算法MADDPG的理解

    MADDPG的架构 MADDPG采用的是 中心化训练 43 去中心化决策 的架构 xff0c 是一种Actor Critic方法 其中每个智能体都有一个价值网络和策略网络 价值网络和策略网络 第i号价值网络 Critic 输入 xff1a
  • 互联网知识点整理

    软件测试知识点 数据库知识点 计算机网络知识点 数据结构知识点 C 43 43 知识点整理 JAVA知识点整理
  • 导出TensorBoard中的所有数据并平滑处理

    点击此处 tensorboard平滑曲线代码
  • RL论文数据图绘制

    rl plotter 强化学习论文里的训练曲线是用什么画的 xff1f 如何计算相关变量
  • 强化学习之美

    强化学习作为一门灵感来源于心理学中的行为主义理论的学科 xff0c 其内容涉及概率论 统计学 逼近论 凸分析 计算复杂性理论 运筹学等多学科知识 xff0c 难度之大 xff0c 门槛之高 xff0c 导致其发展速度特别缓慢 随着近年来以
  • 直线型一阶倒立摆2---建模

    三 直线型一阶倒立摆模型建立 一级倒立摆系统是一个不稳定的系统 xff0c 需要对其进行机理建模 在研究过程中 xff0c 应忽略空气摩擦 等 xff0c 而后可将倒立摆系统进行抽象化 xff0c 认为其由小车和匀质刚性杆两部分组成并对这两
  • 可用性和可靠性的区别

    首先 xff0c 这两个属性都是质量 xff08 可维护性 xff09 的一部分 按照书上的定义 xff0c 可靠性 xff08 reliability xff09 xff1a 在规格时间间隔内和规定条件下 xff0c 系统或部件执行所要求