日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【软件工程】容错、高可用、灾备の辨析

發布時間:2025/3/15 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【软件工程】容错、高可用、灾备の辨析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

容錯、高可用、災備

標題里面的三個術語,很容易混淆,專業人員有時也會用錯。

本文就用圖片解釋它們有何區別。


容錯

容錯(fault tolerance)指的是, 發生故障時,系統還能繼續運行

飛機有四個引擎,如果一個引擎壞了,剩下三個引擎,還能繼續飛,這就是"容錯"。同樣的,汽車的一個輪子扎破了,剩下三個輪子,也還是勉強能行駛。

容錯的目的是,發生故障時,系統的運行水平可能有所下降,但是依然可用,不會完全失敗。

高可用

高可用(high availability)指的是, 系統能夠比正常時間更久地保持一定的運行水平

汽車的備胎就是一個高可用的例子。如果沒有備胎,輪胎壞了,車就開不久了。備胎延長了汽車行駛的可用時間。

注意,高可用不是指系統不中斷(那是容錯能力),而是指一旦中斷能夠快速恢復,即中斷必須是短暫的。如果需要很長時間才能恢復可用性,就不叫高可用了。上面例子中,更換備胎就必須停車,但只要裝上去,就能回到行駛狀態。

災備

災備(又稱災難恢復,disaster recovery)指的是, 發生災難時恢復業務的能力

上圖中,飛機是你的 IT 基礎設施,飛行員是你的業務,飛行員彈射裝置就是災備措施。一旦飛機即將墜毀,你的基礎設施就要沒了,災備可以讓你的業務幸存下來。

災備的目的就是,保存系統的核心部分。一個好的災備方案,就是從失敗的基礎設施中獲取企業最寶貴的數據,然后在新的基礎設施上恢復它們。注意,災備不是為了挽救基礎設置,而是為了挽救業務。

總結

上面三個方面可以結合起來,設計一個可靠的系統。

  • 容錯:發生故障時,如何讓系統繼續運行。
  • 高可用:系統中斷時,如何盡快恢復。
  • 災備:系統毀滅時,如何搶救數據。

轉載來源

阮一峰的博客


對上述內容的解讀

V1

容錯: 降頻
高可用: 重啟
災備: 重裝系統

V2

容錯:異常控制
高可用:模塊化、版本控制
容災:備份、鏡像

V3

容錯:必須要“可用”,允許“低可用”
高可用:必須“高可用”
容災:“災難發生,依然可用”


知乎回答

高可用是目標,容災是實現這一目標的手段

可用性是什么?

可用性是一種安全屬性,是信息安全三要素CIA中的A:

  • 保密性(Confidentiality)
  • 完整性(Intergrity)
  • 可用性(Availablility)

高可用是系統的重要目標,但往往不是最重要的。例如軍用系統中保密性最重要(寧可毀掉系統也不愿機密落入敵手)

商業系統中完整性最重要(寧愿服務終止,賬本泄露也不容許篡改)

只不過保密性與完整性不好衡量,非常不適合拿出來吹逼。

而可用性有一個簡單粗暴的衡量指標:系統能正常運行的時間占總時間的百分比。比如99%的可用性就表示系統保證在99%的時間內正常服務。

通常99.99%四個九可以稱為高可用,載人航天中,這一標準是99.9999%。

容錯是什么?

容錯是一種提高可靠性的手段。造成錯誤的原因叫做故障(fault),能預料并應對故障的系統特性可稱為容錯(fault-tolerant)或韌性(resilient)。

通常一些“小錯“,硬件錯誤,軟件錯誤,人為錯誤,忍一忍也就過去了。給出問題的用戶報個錯,系統還是“可用”的。畢竟好死不如賴活著。

但某些錯誤 —— 災難,是茍不了的,整個機房被水淹沒,光纜挖斷之類的事情。通常會直接使服務不可用。要容這種錯,有必要用些諸如x地x中心復制,自動故障遷移的容災技術。

容災通常就是奔著系統高可用去的。換句話說,不支持“容災”,哪好意思管自己叫“高可用”。不過容災總是有限度的,假設整個地球被黑洞吞沒,那要容災除非把主機托管到太空中去。而且并不是所有的情況下,容災都是好東西的。

面對疾病,我們有兩種策略:預防與治療。預防太費錢費事,人們通常會選擇有病再治。類似的道理,比起阻止錯誤,我們通常更傾向于容忍錯誤。但也有預防勝于治療的情況(比如不存在治療方法時)。安全問題就屬于這種情況。

如果攻擊者要希望獲取軍用系統中的保密數據,或者程序Bug即將破壞商業系統中的數據完整性。很多時候我們都是希望寧為玉碎不為瓦全,不要容這種錯的。這種與容錯背道而馳的哲學稱為速死(Fail-Fast)

因此當服務商吹噓高可用時。不要忘了看一看,這些服務的保密性怎么樣?

轉載說明

用途:分享、學習
作者:馮若航
鏈接:https://www.zhihu.com/question/278172049/answer/398357428
來源:知乎


知乎回答

在信息安全領域,高可用指的是通過各種技術手段、架構設計、軟硬件實現方法,提高信息系統及系統的各個組成部分、支持組件的可用性。常見手段有:冗余的網絡鏈路、服務器的集群等等。

舉個例子,重要網絡節點的硬件防火墻設備,可能會因為流量過大,造成設備處理性能急劇下降,進而顯著影響整個網絡的可用性。解決的思路一般是兩臺設備配置高可用模式。常見的高可用模式分兩種,一種是主主模式,兩臺設備同時在線共同處理。另一種是主備模式,通過設備間的心跳機制做故障切換。

而容災,一般特指面對自然災害時的處理與恢復能力。在ISO27002種有專門一個Domain講業務連續性,而ISO22301是一份專門講業務連續性的國際標準。感興趣可以Google標準全文仔細研究。概括來說,容災設計一般是通過多個機房提高企業容災能力,遇到災害時,即使一個機房無法服務,可通過技術手段近乎無縫的將流量切換到其他機房。

有其他答案中提到了兩地三中心的概念,這在前幾年的金融業是非常主流的一種說法。在有關業務連續性的指南中也有要求,災備機房應距離主機房XX千米以外。同城災備、異地災備應該如何設計,都是有要求的。不過最近國內的大型互聯網企業已經逐漸淡化兩地三中心的概念,并非是拋棄災備設計,而是轉而將以前的災備機房的地位逐步提高,通過復雜的網絡設計實現了多機房并行處理業務。

無論技術如何發展,企業面對地震、火災等自然災害時的應對能力、連續服務保障能力,都是業務連續性管理的重中之重。

總結

以上是生活随笔為你收集整理的【软件工程】容错、高可用、灾备の辨析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。