📅  最后修改于: 2023-12-03 14:49:12.487000             🧑  作者: Mango
故障屏蔽(Fault Tolerance)指的是系统在面对故障时,仍能够继续提供服务的能力,即系统的可用性。在软件开发中,为了提高系统的可用性,我们通常会采用故障屏蔽技术。
系统故障可能由以下原因引起:
冗余备份(Redundancy)是一种常见的故障屏蔽技术,它指的是在系统中添加冗余的组件,当某个组件出现故障时,另外一个组件可以顶替它继续工作,从而保证系统的可用性。冗余备份可以分为以下几类:
重试机制(Retry)指的是在系统中发生错误时,系统会尝试重新执行这个操作,这样可以避免由于偶发性故障导致整个系统失败。重试机制通常会配合超时设置,当超时时间到达时,会重试另一个节点或者直接返回异常。
快速切换(Switchover)指的是在出现故障时,系统会自动将服务切换到另一个节点上,从而保证系统的可用性。快速切换需要具备两个节点,一个是主节点,负责提供服务;另一个是备用节点,当主节点出现问题时,备用节点会自动接替主节点提供服务,从而保证系统的可用性。
负载均衡(Load Balancing)指的是在系统中,把请求分发到多个节点上,从而将负载均衡到多个节点上。当某个节点出现问题时,负载均衡会将请求重新分发到其他节点,从而保证整个系统的可用性。
故障屏蔽是保证系统可用性的基本手段之一,现代的互联网系统几乎都会采用故障屏蔽技术,以便能够在出现故障时,及时恢复服务,从而避免损失。