網站高可用架構--一

  網站的可用性(Availability)描述網站可有效訪問的特徵。算法

  • 網站可用性的度量與考覈
  1. 網站可用性度量

 

  2.網站可用性考覈數據庫

     

  可用性指標是網站架構設計的重要指標。從管理層面,可用性指標是網站或者產品的總體考覈指標,具體到每一個工程師的考覈,更多使用的是故障分。所謂故障分是指對網絡故障進行分類加權計算故障責任的方法。緩存

  • 高可用的網站架構

      硬件故障是常態,網站的高可用架構設計的主要目的就是保證服務器硬件故障時服務依然可用、數據依然保存並可以被訪問。實現高可用架構的主要手段是數據和服務的冗餘備份以及失效轉移,一旦某些服務器宕機,就將服務切換到其它可用的服務器上,若是磁盤損壞,則從備份的磁盤讀取數據。服務器

  • 高可用的應用

      應用層主要處理網站應用的業務邏輯,有時也稱做業務邏輯層,應用的一個顯著特色是應用的無狀態性。所謂無狀態的應用是指應用服務器不保存業務的上下文信息,而僅根據每次請求提交的數據進行相應的業務邏輯處理,多個服務器實例之間徹底對等,請求提交到任意一臺服務器,處理結果都是同樣的。網絡

  1.經過負載均衡進行無狀態服務的失效轉移session

      負載均衡:在業務量和數據量較高的狀況下,當每臺服務器不足以承擔全部的負載壓力時,經過負載均衡手段,將流量分配和數據分攤到一個集羣組成的多臺服務器上,以提升總體的負載處理能力。當集羣中服務是無狀態對等時,負載均衡能夠起到事實上的高可用做用。架構

 

  2.應用服務器集羣的Session管理負載均衡

 

  集羣環境下,Session管理手段:分佈式

  • Session複製

 

 

  優勢:從本機讀取Session信息速度快,適合集羣規模比較小的狀況下。網站

      缺點:當集羣規模比較大時,集羣服務器間須要到大量的通訊進行Session的複製,佔用大量服務器和網絡資源。並且因爲全部用戶的Session信息在每臺服務器上都有備份,在大量用戶訪問的狀況下,可能出現服務器內存不夠session使用的狀況。

  • session綁定

 

  Session綁定方案不符合系統高可用的需求,所以不多有網站利用這個算法進行Session管理。

  • 利用Cookie記錄Session

 

  • Session服務器

  利用獨立部署的Session服務器(集羣)統一管理Session,應用服務器每次讀寫Session是,都要訪問Session服務器

  這種解決方案事實上是將應用服務器的狀態分離,分爲無狀態的應用服務器和有狀態的Session服務器,而後針對這兩種服務器的不一樣特性分別設計其架構。對於有狀態的Session服務器,一種比較簡單的方法是利用分佈式緩存、數據庫等,在這些產品的基礎上進行包裝,使其符合Session的存儲和訪問要求。若是業務場景對Session管理有比較高的要求,好比利用Session服務集成單點登陸(SSO)、用戶服務等功能,則須要開發專門的Session服務管理平臺。

相關文章
相關標籤/搜索