讀書筆記(一)
大型網站架構演化數據庫
1,應用服務與數據服務分離緩存
- 應用服務器須要強大CPU
- 數據庫服務器須要更快的硬盤和更大的內存
- 文件服務器須要更大的硬盤
2,使用緩存,減輕數據庫壓力服務器
- 緩存分應用服務器本地緩存和專門的遠程緩存
- 本地緩存訪問速度快,可是受應用內存大小的限制
- 遠程分佈式緩存能夠使用集羣的方式,理論上無限容量
3,使用應用服務器集羣改善網站併發處理能力網絡
- 經過負載均衡調度服務器將請求分發到應用服務器集羣中的任何一臺服務器
4,數據庫讀寫分離架構
- 應用服務器使用專門的數據訪問模塊,使數據庫讀寫分離對應用透明
- 利用數據庫的主從熱備功能,實現讀寫分離
5,使用反向代理和CDN加速網站響應併發
- CDN和反向代理的基本原理都是緩存
- CDN和反向代理的區別在於CDN部署在網絡提供商的機房,使用戶能夠就近獲取數據;反向代理服務器部署在網站的中心機房
- CDN和反向代理服務器緩存着用戶請求的資源,將其直接返回給用戶
- 反向代理服務器部署在負載均衡服務器以前(書上的圖標識)
6,使用分佈式文件系統和分佈式數據庫負載均衡
- 單表數據規模很是龐大的時候才使用分佈式數據庫,分佈式數據庫是數據庫拆分的最後手段
- 通常的數據庫拆分是根據業務進行分庫,將不一樣的業務部署在不一樣的物理服務器上
7,使用NoSQL和搜索引擎分佈式
8,業務拆分網站
- 將業務進行拆分,每一個業務單獨部署
- 業務之間能夠用遠程調用或消息隊列進行通訊
9,分佈式服務搜索引擎
- 業務拆分到最後會致使應用總體複雜度指數增長,數據庫連接資源不足,所以須要分佈式服務
- 分佈式服務是將一些能夠複用的業務獨立出來,提供共用業務服務
歡迎關注本站公眾號,獲取更多信息