大型網站技術架構演進與性能優化(九)九、網站高可用建設:大型網站的穩定性建設

九、網站高可用建設:大型網站的穩定性建設
穩定性是決定網站生死的命脈
1、故障帶來的影響
導致極差的用戶體驗、嚴重影響公司聲譽
2、網站的可用性指標
網站可用性即網站正常運行時間的百分比,業界用N個9來量化可用性,最常說的是“4個9(99.99%)”。
網站可用性如果對達到4個9基本上就算及格了,即網站一年的不可用時間不超過52分鐘。爲了保障整個網站的全部服務完全不出錯,有必要對服務進行分級,以保障服務的高可用性。
3、穩定性建設思路
穩定性的建設,有兩個重要因素:一是思想上重視,開發人員對穩定性的重視可以避免70%-80%的故障;二是規範和工具的建設,用以保障穩定性。
架構階段的穩定性建設項目:避免單點、分組隔離、異地容災。
編碼階段的穩定性建設:錯誤捕獲、異步線程、超時處理、限流保護。
測試階段的穩定性建設:自動化對比測試、Beta測試。
發佈階段的穩定性建設:分批發布、多版本發佈。
運行階段的穩定性建設:實時監控報警、過載保護和自動降級、實時數據對賬。
故障發生時的穩定性建設:故障定位、快速恢復。
4、高可用體系化建設
包括壓測體系、管控體系、監控體系、恢復體系和度量體系。
壓測體系:分爲單系統壓測和全鏈路壓測。
全鏈路壓測的技術難度並不大,技術手段主要由流量的製造、流量的標記、測試數據的處理。
管控體系主要是遇到一些異常情況時提供保護系統的措施,包括開關係統、預案系統、限流降級系統等。
監控體系:是穩定性建設的必備措施,它可以分爲多個子系統:異常智能監控系統、調用鏈路跟蹤系統、端到端的鏈路染色系統、業務數據軌跡重現系統、業務數據對賬系統等。
恢復體系:最簡單的方式就是回滾以及執行變更操作。
度量體系:性能基線、鏈路基線、成本基線。
5、研發人員的轉變
向全棧工程師轉變、向全鏈路運維轉變、向工具化和規範化轉變
6、穩定性組織保障
穩定性建設是比較難的任務,如果平時運行良好,很難申請到資源支持;但是一旦出現問題,壓力就非常大。穩定性保障是個苦差事。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章