優點與缺點
一般來說冗餘系統目的在於:為了保險起見,採取兩套同樣獨立配置的硬體、軟體或設計等,防止在其中一套系統出現故障時,另一套系統能立即啟動,代替工作,這就好比演員的替身。一套單獨的系統也許運行的故障率很高,但採取冗餘措施後,在不改變內部設計的情況下,這套系統的可靠性立即可以大幅度提高。假如單獨系統的故障率為50%,而採取冗餘系統後馬上可以將故障率降低到25%。
冗餘系統的優點在於:
一、以現有的系統為依託,不需要任何時間或科研投入,可以立即實現;
二、配置、安裝、使用簡單,無需額外的培訓、設計等;
三、使用冗餘系統,理論上來講,系統的故障率可以接近為零。
冗餘系統的缺點在於:
一、使用冗餘系統就代表該系統臃腫,不簡潔;
二:投入成本巨大,需要購買額外的系統,以及增加該系統後的後期維護成本等;
三、完全獨立的系統並不存在,所以冗餘系統最大的缺點在於,相互獨立的配置之間會互相影響(尤其是依靠人的冗餘系統),可靠性相對理論計算會大幅度下降。
套用
冗餘系統因為前期投入巨大,後期的維護成本高,所以只有在高風險(包括金融風險、行政風險、管理風險以及危及生命安全的風險)行業套用比較廣泛,如:金融領域、核安全領域、航空領域、煤礦等領域。
銀行中的數據非常重要,即使伺服器小機率的故障,也會有很大影響,甚至會影響一個國家的金融體系的穩定。所以,每一個銀行的數據至少同時存在兩個以上的不同地點的伺服器中(這就是一個簡單的冗餘系統),需要明白的是這個跟備份不一樣,備份可以是先存儲,再備份,而銀行系統的冗餘系統是同時更改,以保證在任意時間,任意一個伺服器的故障,都不會引起數據失真。
航空領域的飛機,因為單次飛機事故造成的死亡率高,死亡人數多,所以冗餘系統在飛機上也有很好的套用,如果一個飛機需要兩個發動機可以正常啟用的話,那這個飛機可能需要至少四個發動機,除去安全係數的考慮外,這裡面就有冗餘系統的理念,以保證一兩個發動機的故障,不會引起飛機失事,而造成重大的事故。這裡可以看出冗餘系統的一個很重要的缺點:就是發動機的故障並不是獨立的,可能其中一個發動機著火的話,會引起其他發動機的故障,所以這個可靠性會比理論計算的少很多。
生活中,也有比較常見的冗餘系統,如運貨的重卡,在卡車載重的後輪胎上,任意一個軸承上的一邊至少有兩個輪胎,其實僅需要一個輪胎,重卡就可以正常運行,另外一個輪胎就是冗餘系統了。
冗餘系統不一定非要是軟體類的系統或機械類的設備,也可以是人(廣義上來說人也是系統的一部分),但用人來當冗餘系統的話,可靠性會更低,因為人的判斷更易受外界因素的干擾。