大型網站技術架構(一)--大型網站架構演化
看完了有一本書,就應該有所收穫,有所總結,最近把《大型網站技術架構》一書給看完了,給人的印象實在深刻,再加上之前也搞過書本上講的反向代理和負載均衡以及session獨立儲存和快取,因此書本看起來還是挺通俗易懂的,而且作者李智慧給人的印象(書本)也挺深刻的,我從這本書中也學到了許多,瞭解的許多,但是理解還是比較抽象的,寫出來才是真正的理解,因此準備寫一系列的部落格來介紹和加深理解大型網站技術架構。
說道大型網站,就的先說大型網站的特點:高併發,大流量,高可用,海量資料等。下面就說說大型網站的架構演化過程吧。
1、初始階段的網站架構
初始階段都比較簡單,通常一臺伺服器就可以搞定一個網站了,看圖。
2、應用服務和資料服務分離
隨著網站業務的發展,一臺伺服器逐漸不能滿足需求;這時候就需要將應用和資料分離,如圖。
3、使用快取改善網站效能
毫無疑問,現在的網站基本上都會使用快取,即:80%的業務訪問都會集中在20%的資料上。
4、使用應用伺服器叢集改善網站的併發處理能力
因為單一應用伺服器能夠處理的請求連線有限,在網站訪問高峰時期,應用伺服器會成為整個網站的瓶頸。因此使用負載均衡處理器勢在必然。通過負載均衡排程伺服器,可將來自瀏覽器的訪問請求分發到應用的叢集中的任何一臺伺服器上。
5、資料庫讀寫分離
當使用者達到一定規模後,資料庫因為負載壓力過高而成為網站的瓶頸。而目前主流的資料庫都提供主從熱備功能,通過配置兩臺資料庫主從關係,可以將一臺資料庫的資料更新同步到另一臺伺服器上。網站利用資料庫這一功能實現資料庫讀寫分離,從而改善資料庫負載壓力。
6、使用反向代理和CDN加上網站相應
提高網站的訪問速度,主要手段有使用CDN和反向代理。
CDN和反向代理的基本原理都是快取,區別在於CDN部署在網路提供商的機房,而反向代理是部署在網站的中心機房,當使用者請求到達中心機房後,首先訪問的反向代理,如果反向代理快取著使用者請求的資源,則直接返回給使用者。
7、使用分散式檔案系統和分散式資料庫系統
任何強大的單一伺服器都滿足不了大型網站持續增長的業務需求。
分散式資料庫時網站資料庫拆分的最後手段,只用在單表資料規模非常大的時候才使用。不到不得已時,網站更常用的資料庫拆分手段是業務拆分,將不同業務的資料部署在不同的物理伺服器上。
8、使用NoSQL和搜尋引擎
搜素引擎也基本已經形成現在大型網站必須提供的功能了,網站需要採用一些非關聯式資料庫技術如NoSQL和非資料庫查詢技術如搜尋引擎。
9、業務拆分
大型網站為了應對日益複雜的業務場景,通過使用分而治之的手段將真個網站業務拆分成不同的產品線。
具體到技術上,也會根據產品線話費,將一個網站拆分成許多不同的應用,每個應用獨立部署維護。應用之間可以通過超連結建立管理,也可以通過訊息佇列進行資料分發,當然最多的還是通過訪問同一個資料儲存系統來構成一個關聯的完整系統。
10、分散式服務
由於每一個應用系統都需要執行許多相同的業務操作,比如使用者管理,session管理,那麼可以將這些公用的業務提取出來,獨立部署。
相關文章
- 大型網站系統架構演化網站架構
- 大型網站架構演化歷程網站架構
- 大型網站技術架構——2. 網站架構模式網站架構模式
- 大型網站技術架構(三)--架構模式網站架構模式
- 大型網站技術架構(四)--核心架構要素網站架構
- 大型網站架構利器-CDN技術網站架構
- 大型網站架構演化發展歷程網站架構
- 一張圖看懂大型網站技術架構網站架構
- 大型網站技術架構核心原理(1)網站架構
- 大型網站架構演化發展歷程 - 上網站架構
- 《大型網站技術架構:核心原理與案例分析》讀書筆記 - 第4篇 架構師(附 大型網站架構技術一覽)網站架構筆記
- 讀書筆記-大型網站技術架構筆記網站架構
- 乾貨 | 大型網站專案架構技術一覽網站架構
- 大型網站架構模式筆記網站架構模式筆記
- 大型網站架構之我見網站架構
- 阿里面試技術手冊(二):大型網站架構演化發展歷程阿里面試網站架構
- 網站技術架構網站架構
- 大型網際網路公司網站架構背後的基礎技術2019網站架構
- 《大型網站技術架構:核心原理與案例分析》讀書筆記 - 第2篇 架構網站架構筆記
- 讀書筆記 之《軟體架構設計: 大型網站技術架構與業務架構融合之道》筆記架構網站
- 思維導圖形式帶你讀完《大型網站技術架構》上網站架構
- 思維導圖形式帶你讀完《大型網站技術架構》中網站架構
- 《大型網站技術架構核心原理與案例分析》讀書筆記(二)網站架構筆記
- 大型分散式網站架構實戰專案分析分散式網站架構
- 大型網站的可伸縮性架構如何設計?網站架構
- 大型網際網路架構概述架構
- 初入探秘:大型網站架構設計與方法總結網站架構
- 《大型網站技術架構:核心原理與案例分析》讀書筆記 - 第3篇 案例網站架構筆記
- 《大型網站技術架構:核心原理與案例分析》讀書筆記 - 第1篇 概述網站架構筆記
- 大型網站架構演進的五大階段盤點網站架構
- 大型網站背後的高效能系統架構設計網站架構
- 【網站架構13/100】一步步帶你,如何網站架構網站架構
- 網站架構設計網站架構
- 大型分散式網站架構:快取在分散式系統中的應用分散式網站架構快取
- 乾貨:記一次JavaWeb網站技術架構總結JavaWeb網站架構
- 大型網際網路高可用架構設計實踐2019架構
- 大型網際網路系統架構是如何設計的?架構
- 雲端計算影片教程:Linux大型網站高併發架構及自動化運維Linux網站架構運維
- 《大型網際網路企業安全架構》讀書筆記架構筆記