高级分布式系统-第6讲 分布式系统的容错性--故障/错误/失效/异常

分布式系统容错性的概念

分布式系统的容错性: 当发生故障时, 分布式系统应当在进行恢复的同时继续以可接受的方式进行操作, 并且可以从部分失效中自动恢复, 且不会严重影响整体性能。

具体包括以下4个方面的内容:

可用性( availability) : 系统可以正确操作, 根据用户的行为来执行预定功能。

可靠性( reliability) : 系统可以无故障地持续运行。

安全性( safety) : 系统在偶然出现故障时, 能正确操作、 输出而不会造成任何灾害。 也称故障-安全性或者故障导向安全性。

可维护性( maintainability) : 发生故障的系统被恢复的难易程度。

分布式系统容错性-----故障/错误/失效/异常

故障、 错误和失效是容错系统中三个重要的概念, 它们之间的关系如下图所示:

故障( Fault) : 引起错误的直接原因( 异常条件) 。

错误( Error) : 由故障引起的子系统( 组件) 的不正确的内部状态。

失效( Failure) : 组件( 子系统) 在特定时刻的实际行为与预期行为之间产生了不一致的结果。

异常( Abnormity) : 错误与正常之间的一种预期外状态或者行为

故障的分类

高级分布式系统-第6讲 分布式系统的容错性--故障/错误/失效/异常_第1张图片

错误的几个阶段:

激活错误: 一旦错误被计算访问或者影响了访问的流程( 如干扰) , 就激活了错误。

检测发现错误: 当计算访问错误后, 在值域或时域偏离的状态通过检测被发现。

如一个二进制数据的破坏, 可通过简单的奇偶校验检测发现。

消除错误: 用一个在值域和时域无偏离的新值覆盖了错误。

没有被激活、 检测发现或消除的错误称为潜伏错误( latent error) , 可能产生严重后果。

错误传播: 内部错误被激活并且已扩散到该组件( 子系统) 之外, 引发了其他的错误。

失效的严重性分类

高级分布式系统-第6讲 分布式系统的容错性--故障/错误/失效/异常_第2张图片

失效的影响轻微, 其代价与系统的正常应用的损失在同一个数量级,这类失效称为良性失效。

失效可能导致灾难性后果, 其代价比系统正常应用损失高出几个数量级, 这类失效称为恶性失效( 或者危险失效) 。

失效是良性的还是恶性的, 完全取决于应用的特性。

可能发生恶性失效的应用称为安全关键( safety critical) 应用

你可能感兴趣的:(高级分布式系统)