- 相關推薦
系統(tǒng)架構師知識:高可用系統(tǒng)設計
高可用系統(tǒng)設計,常見于大中型互聯(lián)系統(tǒng)架構設計。下面為大家整理了一些關于高可用系統(tǒng)設計的知識,一起來了解一下!
1、系統(tǒng)可用性
系統(tǒng)可用性定義:MTTF/(MTTF+MTTR) * 100%
MTTF: mean time to failure,平均失效前時間,也就是正常運行的時間
MTTR: mean time to restoration, 平均恢復前時間,也就是故障時間
系統(tǒng)高可用性(High Availability)通常來描述一個IT系統(tǒng)經過專門的設計,減少計劃和非計劃停工時間,保持其服務的高度持續(xù)可用性。
影響系統(tǒng)可用性的因素很多,包括硬件、軟件、網(wǎng)絡和環(huán)境(比如機房溫度)等,除了常見的CPU、內存、IO、網(wǎng)絡、鎖等因素,還需要考慮各種支持設備和系統(tǒng)、非技術的因素,總之,系統(tǒng)可用性是一個綜合因素影響的結果。
2、高可用的模式
系統(tǒng)高可用性的常用設計模式包括三種,包括:
(1)、主備(Active-Standby)
工作原理:主機工作,備機處于監(jiān)控準備狀況;當主機宕機時,備機接管主機的一切工作,待主機恢復正常后,按使用者的設定以自動(熱備)或手動(冷備)方式將服務切換到主機上運行。一般需要人工干預才能回復初始狀態(tài)。
(2)、互備(Active-Active)
工作原理:兩臺主機(A標記為主,B標記為備)同時運行各自的服務工作且相互監(jiān)測情況,當任一臺主機(A)宕機時,另一臺主機(B,啟用并標記為主)立即接管它的一切工作,保證工作實時可用
(3)、集群(Cluster)
工作原理:多臺具有相同能力的服務同時對外提供透明服務,所有服務之間都是Active-Active關系,并分擔處理服務請求,一般通過總控節(jié)點或集群軟件(例如zookeeper等)進行高可用的控制。
3、高可用的設計
高可用的設計沒有完美的標準答案。但是根據(jù)工程經驗,我們可以總結出高可用設計的一個重要指標:
不要有單點。
不要有單點。
不要有單點。
如果是在設計開發(fā)實現(xiàn)和維護大中型web系統(tǒng),通常我們會從互聯(lián)系統(tǒng)中最容易出現(xiàn)問題,同時也最不容易橫向擴展的節(jié)點下手(包括網(wǎng)絡和存儲系統(tǒng)),排查并解除系統(tǒng)中的薄弱環(huán)節(jié),爭取保證整個系統(tǒng)中絕不出現(xiàn)單點這一死角,或者出現(xiàn)單點,但也可以通過成熟的優(yōu)化手段(緩存、隊列、sharding、負載均衡和異地容災等)實現(xiàn)高可用。
你可能還是會有疑問:是不是系統(tǒng)中沒有單點了保證高可用了就一定不出事情了呢?
答案是,還是可能會出事,而且可能都是大事。今年的黑色五月份的幾起重大IT事故,無情地告訴我們,再高明的設計,碰到物理破壞或者權限控制不當而誤操作或者DDoS都有可能讓開發(fā)和設計人員的所有心血付之東流。
【系統(tǒng)架構師知識:高可用系統(tǒng)設計】相關文章:
高可用的SAP系統(tǒng)架構的實現(xiàn)07-26
系統(tǒng)架構師的知識和職責08-20
系統(tǒng)架構師概述11-07
系統(tǒng)架構師崗位職責08-22
系統(tǒng)架構師申請條件201708-28
系統(tǒng)架構師的職責-必備能力10-28
系統(tǒng)架構師職責有哪些09-23