最近接觸了互聯網網站架構,架構的演化,發展等,
剛剛學習,現在做個簡單的理解,,
一、網站后台常用LAMP架構,
System: Linux/Unix 泛指,常用的有centos,debian,redhat,suse,
Storage: Mysql 開源的關系型數據庫,可擴展到Memcached-分布式的內存對象緩存系統,在內存里維護一個統一的hash 表,能夠存儲各種格式的數據:圖片,視頻,文件以及數據庫檢索的結果。Hash表以Key,Vaual的KV值存儲,用hashcode除以數組數求余,余數是多少就可以把KV值存在相應的數組里。
Service: 主要有五種web service,包括apache,IIS,Lighttpd,Zeus,Nginx,…Apache 占有全球72%市場的開源的Web Service,全美前100名中占有49%的市場
Script: PHP,Perl,Python等解釋型腳本語言
目前中國前200名網站中有61%的采用了LAMP架構
基於B/S 的web系統三層體系(分層式設計):客戶端/管理端、應用服務器,數據服務器,簡單來講就是:表現層-內容表現層,應用層-業務邏輯處理,數據層-數據管理,存儲等。。
B/S 門戶網站,各類網站 如下圖:
二、構建基於Lamp的中型網站的架構
1.最簡單的單台Web+DB架構 10W PV-網站每天的網頁瀏覽數 網站架構
如下簡圖:
2.負載均衡服務器,多Web服務器,緩存服務器,DB服務器(主、從 讀寫分離)
100W PV 網站架構
如下簡圖:
負載均衡服務器---
3.1000W PV 網站架構
負載均衡服務器,CDN代理服務器,反向代理服務器,靜態資源服務器,分布式集群,緩存服務器,DB連接池,多從服務器, DB Master冗余備份,
如下簡圖:
其他按照需求還有消息隊列,分布式文件系統,,可持久化緩存系統等,數據庫切片:水平和垂直,並分布式布署,減少模塊耦合度,基礎模塊獨立服務,比如用戶系統。分表,分庫