标签:Over Safe Fast 故障 线程 Fail 失效
目录1、Fail-Over:故障转移
Fail-Over 意思是“故障转移,失效切换”,是一种备份操作模式,主要思路是:
主要组件出现异常时,将其功能转移到具有同样功能的备份组件。
要点在于有主有备,且主发生故障时,可将备切换为主。比如 HDFS 的双 NameNode,当 Active NameNode 出现故障时,可以启用 Standby NameNode 来继续提供服务。
2、Fail-Fast:快速失败
就是“快速失败”,尽可能早地发现系统中的错误,使系统能够按照事先设定好的错误流程执行,对应的方式是“fault-tolerant(错误容忍)”。
以 Java 集合(Collection)的快速失败为例,当多个线程同时操作同一个集合中的元素时,就可能发生 Fail-Fast 事件。
具体示例:当线程 A 通过迭代器遍历某集合的时候,其他线程刚好修改了该集合中的元素(比如添加、删除),这个时候,线程 A 在继续访问集合时,就会抛出 ConcurrentModificationException 异常,产生Fail-Fast 事件。
这里的并发修改异常,就是 发现错误时执行设定好的错误。
3、Fail-Back:失效自动恢复
Fail-Back,就是在故障转移(Fail-Over)之后,发生故障的服务/机器 能够自动恢复。
比如:在簇网络系统(两台或多台服务器互联的网络)中,如果要对某台服务器进行维修,需要把服务(或网络资源)暂时重定向到备用系统。
维修结束后,再将服务(或网络资源)恢复为 由原来维修的主机提供 的过程,称为自动恢复。
4、Fail-Safe:失效安全
失效安全,即使在故障的情况下,也不会对系统造成伤害或尽量减少伤害。
比如:红绿灯 - Traffic light 中,对红绿灯的“冲突监测”的示例:
如果冲突监控器检测到错误或冲突的信号时,交通信号灯将进入闪烁模式。
该信号可能会向主要道路显示呈琥珀色闪烁,向人行道路呈红色闪烁,或在所有方向上呈红色闪烁,也可以在交通不畅的白天(例如深夜)使用闪光操作 —— 而不是全部显示为绿灯。
参考资料
版权声明
本文系转载,并在原文的基础上做了一定的补充和修改。如有侵权,请原作者联系博主,定当立即删除。
标签:Over,Safe,Fast,故障,线程,Fail,失效 来源: https://www.cnblogs.com/shoufeng/p/14974891.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。