对比Availability可用性、Reliability可靠性、Stability稳定性
Posted on 2020-07-13 17:13 蝈蝈俊 阅读(12585) 评论(0) 编辑 收藏 举报简单区分
从事故、稳定方面简单理解如下:
名词 | 简单理解 |
---|---|
可靠性 | 不出事故 |
可用性 | 不出事故 出事故后,快速止损 |
稳定性 | 解决故障问题基础上 服务持续稳定、性能稳定 |
总体对比
可用性 | 可靠性 | 稳定性 | |
英文 | Availability | Reliability | Stability |
关注点 |
关注的是服务总体的持续时间。 系统在给定时间内总体的运行时间越长,可用性越高。 |
关注系统可以无故障地持续运行的概率,关注的是故障率。 影响可靠性的因素就是能够引起故障的所有因素,包括软件设计错误,编码错误,硬件故障等等。 |
指软件在一个运行周期内、在一定的压力条件下,在持续操作时间内出错的概率,性能劣化趋势等等。 如果一个系统的性能时好时坏,它一定是不稳定的,而不一定是不可靠的。 |
对比 |
作为系统的响应,首要目标是先降低故障的次数,频率要低,从而提高可靠性; 同时在故障出现后,要提高故障的恢复时间,速度要快,从而提高业务的可用性。 |
||
对比 |
故障与出错的差别 |
可用性
可用性指系统在给定时间内可以正常工作的概率,通常用SLA(服务等级协议,service level agreement)指标来表示。
这是这段时间的总体的可用性指标。
通俗叫法 | 可用性级别 | 年度宕机时间 | 周宕机时间 | 每天宕机时间 |
---|---|---|---|---|
1个9 | 90% | 36.5天 | 16.8小时 | 2.4小时 |
2个9 | 99% | 87.6小时 | 1.68小时 | 14分钟 |
3个9 | 99.9% | 8.76小时 | 10.1分钟 | 86秒 |
4个9 | 99.99% | 52.6分钟 | 1.01分钟 | 8.6秒 |
5个9 | 99.999% | 5.26分钟,315.36秒 | 6.05秒 | 0.86秒 |
可靠性
可靠性相关的几个指标如下:
MTBF(Mean Time Between Failure)
即平均无故障时间,是指从新的产品在规定的工作环境条件下开始工作到出现第一个故障的时间的平均值。
MTBF越长表示可靠性越高,正确工作能力越强 。
MTTR(Mean Time To Repair)
即平均修复时间,是指可修复产品的平均修复时间,就是从出现故障到修复中间的这段时间。
MTTR越短表示易恢复性越好。
MTTF(Mean Time To Failure)
即平均失效时间。系统平均能够正常运行多长时间,才发生一次故障。
系统的可靠性越高,平均无故障时间越长。
这些指标跟可用性关系
Availability = UpTime/(UpTime+DownTime) = MTBF / (MTBF + MTTR)
稳定性
Stackoverflow 看到这样一段代码来表示稳定性和可靠性的区别,甚为有趣:
# Reliable but unstable:
add(a,b):
if randomInt mod 5 == 0:
throw exception
else
print a+b
# Stable but unreliable:
add(a,b):
if randomInt mod 5 == 0:
print a+a
else
print a+b
参考:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
2011-07-13 Treesaver 原理、文件功能结构
2010-07-13 linux 文件操作的一些命令