《大型網站技術架構》第五六七章閱讀筆記

                                                             《大型網站技術架構》第五六七章閱讀筆記服務器

      第五章主要講了網站高可用性的相關知識,業界一般用多少個9來衡量網站的可用性,網站的可用性指標是網站架構設計的重要指標,對外是服務承諾,對內是考覈指標。網站的年度可用性指標=(1-網站不可用時間/年度總時間)X100%。通常企業爲提升系統可用性,會採用較昂貴的軟硬件設備,廉價設備雖然節約成本,但在必定程度上也下降了系統可用性,在高強度頻繁讀寫的普通硬盤,致使硬件損壞是常態,網站的高可用性架構設計主要目的就是保證服務器硬件故障時服務依然可用、數據依然保存並可以被訪問。主要手段是數據和服務的冗餘備份及失效轉移,一旦某些服務器宕機,就將服務切換到其餘可用的服務器上,若是磁盤損壞,則從備份的磁盤讀取數據。對於通常的網站分層模型爲:應用層、服務層、數據層。數據層主要負責具體業務邏輯處理;服務層負責提供可複用的服務;數據層數據的存儲與訪問。做者主要介紹了經過負載均衡進行無狀態服務的失效轉移,即在業務量和數據量較高的狀況下,當單臺服務器不足以承擔全部的負載壓力時,經過負載均衡手段,將流量和數據分攤到一個集羣組成的多臺服務器上,以提升總體的負載處理能力。可複用的服務模塊爲業務產品提供基礎公共服務,通常高可用的服務策略有:分級管理、超時設置、異步調用、服務降級、冪等性設計。而高可用的數據的含義:數據持久性、數據可訪問性、數據一致性、數據強一致、數據用戶一致、數據最終一致。對於數據備份有數據冷備和數據熱備提升數據可用性。除此以外文章還介紹了不少提升網站可用性的策略,都是頗有幫助的知識。架構

      第六七章講系統的可伸縮性和可擴展性。擴展性指對現有系統影響最小的狀況下,系統功能可持續擴展或提高的能力。咱們不由想到了面向對象中一大原則:開閉原則,對擴展開放,對修改封閉。也就說,當系統新增一個功能時,不須要對現有系統的結構和代碼進行修改。伸縮性指系統可以經過增長(或減小)自身資源規模的方式加強(或減小)本身計算事務的能力。在網站架構中,一般是指利用集羣的方式增長服務器數量,從而提升系統的總體事務吞吐能力。設計網站可擴展架構的核心思想是:模塊化,並在此基礎之上下降模塊間的耦合,提升模塊的複用性。在大型網站中,這些模塊經過分佈式部署的方式,獨立的模塊部署在獨立的服務器(集羣)上,從物理上分離模塊之間的耦合關係,進一步下降耦合性從而提升複用性。負載均衡

相關文章
相關標籤/搜索