伺服器可靠性:一個9的差距究竟有多大?
伺服器可靠性:一個9的差距究竟有多大?
說到關鍵業務系統的可靠性,經常用到所謂4個9或者5個9,也就是99.99%與99.999%。那麼,4個9或者5個9的差距有多大,差距是0.009%,還不到0.01%。但對於系統而言,恰恰是這不到0.01%的差距,決定了系統完全不在一個檔次上。下面小編趙一八筆記()給大家說說伺服器一個9的差距究竟有多大?
所謂5個9的系統,一年內不能正常工作的時間少於5分15秒。對應4個9的系統是不超過52分36秒。這些都是理論上的資料,在實際工作中有些故障導致的當機時間遠超過5分鐘,即使採用大型主機,也有當機4個多小時的慘痛教訓。
阿里雲官網代金券2000元禮包領取入口:點選領取
騰訊雲官網代金券2860元禮包領取入口:點選領取
https://curl.qcloud.com/0EpTr6fd
問題出在哪裡?
一個系統的可靠性並不完全取決於硬體,而由軟體和硬體共同來決定,如果是軟體問題,最好的解決辦法就是打補丁、升級,再好的硬體也沒有辦法解決軟體的問題。要提高系統的可靠性,軟體是沒有太好辦法的,只有依靠廠商服務來解決問題。使用者可以選擇的只有硬體,其中,包括網路、伺服器以及儲存裝置。其中,網路可以藉助多運營商接入來解決,儲存有RAID、快照等應對技術,透過備份來提高資料安全性。但對於伺服器來說,更多使用者的選擇是採用雙機叢集的方法。
採用雙機叢集的方案是達不到5個9的要求的。原因很簡單,雙機叢集是透過叢集軟體來構建方案的,當其中的一臺伺服器產生故障的時候,切換到備份主機繼續工作,保持業務連續性。裝置之間也可以依靠心跳線連線對故障進行判定。對於叢集而言,故障切換是有嚴格要求的,要求主機、備用機的環境是一致的。在應用實踐中,要求管理要到位,例如同步升級、升級,打補丁。如果管理不到位,很有可能會導致切換失敗。這也是為什麼,系統可以在演示環境下成功切換,但現實中往往做不到的原因。
即便是管理到位,雙機叢集也沒有辦法做到無縫切換,也就是業務不停頓的切換。因為備用主機沒有辦法同步主機記憶體、I/O中的資料,一旦主機突發故障,這些資料沒有辦法在備機中同步,因此也沒有辦法實現不停機的切換。因此,雙機系統切換是需要時間的。
對於使用者而言,雙機系統的價值在於及時恢復系統,重建應用。一旦切換不成功,系統恢復需要較長的時間;如果是叢集軟體的原因,就需要叢集軟體廠商的技術人員來解決問題。因此,雙機叢集方案對於使用者的管理水平和技術水平有很高的要求。
要實現故障的無縫切換,容錯伺服器幾乎是惟一的方案。容錯伺服器不能夠解決軟體的問題,但可以解決硬體系統的問題,因為處理器、記憶體、I/O在每一個計算機時鐘週期內的每一個操作,全部是同步的,也就是透過“鎖步技術”來保持一致性,對結果進行比對,比對一致才會判定成功,否則需要從新計算。但其中一部分硬體產生故障時,系統失去容錯,進入單機執行狀態,待更換故障部件之後,重新進入容錯流程。因此,採用容錯可以徹底克服突發性硬體故障,避免業務中斷。
與小型機、大型機等具有高可靠性的產品相比,採用容錯方案構建的系統,其高可靠性不是來自容錯伺服器產品,不是來自產品不出錯,而是透過特殊的體系架構應對故障的發生。對於小型機、大型機而言,如果也採用容錯結構,那麼系統的可靠性要跨上一個新的臺階,但成本代價不是一般使用者可以承受的。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69977531/viewspace-2733387/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 自學PHP與培訓PHP的到底有多大的差距?PHP
- SQL Server中In-Flight日誌究竟有多大SQLServer
- Google到底有多大?Google究竟有多少使用者?Go
- 麒麟980和麒麟970區別對比 麒麟970和980差距多大?
- 1GB記憶體差距多大?iPhone 7/7 Plus速度對比記憶體iPhone
- 一個Windows 系統究竟有多複雜?Windows
- 一個Java物件到底佔多大記憶體?Java物件記憶體
- 一個Java物件到底佔用多大記憶體?Java物件記憶體
- 咦,Java拆分個字串都這麼講究Java字串
- 一個新手學習PYTHON困難度有多大Python
- 數值計算的可靠性(一)
- 寫一個每秒接收 100 萬資料包的程式究竟有多難?
- 維護香港伺服器安全的9個關鍵措施伺服器
- WebWorker究極探索Web
- 《崩壞:星穹鐵道》第一個以東方龍為主題的角色,有何講究?
- 一個配線光纜交接箱的網路覆蓋能力有多大?
- GTX1050 3G和GTX1050Ti對比評測 效能差距有多大?
- MOBA遊戲地圖的著作權保護(一)——一款MOBA遊戲究竟有幾個地圖?遊戲地圖
- Java 中,如何計算兩個日期之間的差距?Java
- 工具 | 你與大咖的差距也許只是一個瀏覽器啟動頁。瀏覽器
- 細究大資料大資料
- iPhoneX究竟有什麼好的,安卓手機一個能打的都沒有?iPhone安卓
- 一個究極版的大富翁應該是什麼樣子?試著分析《地精公司》的魅力所在
- 伺服器託管選擇多大頻寬合適伺服器
- oracle9i replace clob 的一個bugOracle
- 做一個天貓雙十一這樣級別的活動,技術難度有多大?
- 高階面試必備:一個Java物件佔用多大記憶體面試Java物件記憶體
- 一個django APP 的伺服器部署DjangoAPP伺服器
- 一個伺服器部署的問題伺服器
- Greenplum計算能力估算-暨多大表需要分割槽,單個分割槽多大適宜
- WKWebView終究要入坑WebView
- 演算法,改變了個體與平臺的收入差距演算法
- Promise 的 9 個提示Promise
- 中國的頂級軟體程式設計工程師和歐美的頂級軟體程式設計工程師差距有多大?程式設計工程師
- NET Core Kestrel部署HTTPS 一個伺服器綁一個證書 一個伺服器綁多個證書HTTP伺服器
- 你可能沒有細究過的TCP/IPTCP
- 搭個 Web 伺服器(一)Web伺服器
- 淺究Vue響應式原理Vue