什麼時候需要99.999%的可靠性?
高可用是IT世界中的一個重要領域,不過,對大多少IT公司或組織來說,高可用性達到99.999%是沒必要的。
一個公司或組織是否需要99.999%的可靠性,依賴許多因素:軟體成本,公司財力能否承擔等。
“當你的裝置處理人命關天的事情,或業務中斷一分鐘就會損失百萬美刀,那麼你可以考慮99.99%的可靠性。”Robertson(Linux高可用專案開發者)如是說。
權衡高可用的付出與得到
實現高可用系統的成本,不論是99.99%還是99.999%,都包含了軟體成本,硬體成本,人力成本,還有培訓支出。當一個公司打算要做高可用系統之前,最好先權衡,構建高可用系統的成本,與系統業務中斷所帶來的損失,哪個付出更多。若不想付出太多的資金在構建高可用系統上,那麼就得分析你的系統,什麼時候會出現業務中斷,控制住業務中斷所帶來得損失,以及構建快速恢復的能力。
實際上,關乎每分鐘有百萬美刀的系統,也可以不用做5個9的高可用系統,只要能夠控制到有計劃地中斷業務(也可以說是中斷業務可控制),如在交易時候業務不中斷業務即可。
根據愛默生對41家資料中心的統計資料報告發現:“非計劃的業務中斷是導致公司業績損失的主要因素”
如果一個公司的業務承諾的可靠性是99.99%,那麼每年只允許業務中斷8.76小時。如果業務中斷導致的損失是每小時100萬,那麼一年的損失是876萬。
但是,如果這個公司承諾的可靠性是99.999%,那麼每年只允許業務中斷不超過1個小時,如果業務中斷導致的損失是每小時100萬,那麼一年的損失小於100萬。
我們可以算到,可靠性從99.99%提升到99.999%,可以挽回大概700萬的損失。那麼這種情況下是值得的。
但是如果你提升可靠性到99.999%上面的花費,超過了700萬,那保持99.99%的可靠性也是一種選擇。
任何產品都需要考慮投入與產出比,那麼你允許的業務中斷時間是多少?
99.99%的可靠性對大多數業務來說是足夠的,對於一些離線業務,99.9%可靠性大部分場景下也夠用了。
實現99.99%的可靠性
在一些領域,99.999%可靠性是必須的,如運輸行業。假如火車控制系統故障了,那麼可能成千上萬的旅客就會被滯留。(天朝的7.23事故大家都知道)
這種場景下,實現99.999%可靠性通常使用容錯處理,包含軟體的容錯和硬體的容錯。常見的軟體容錯有負載均衡,就是多個例項同時提供服務。當軟體容錯不起作用時候,就需要用到硬體容錯,硬體容錯一半是做硬體冗餘,如兩個伺服器做主備。