1. 程式人生 > 實用技巧 >網際網路架構演變之路

網際網路架構演變之路

一、不知名的小網站 一臺伺服器滿足要求

典型的技術:linux+mysql+PHP+apache

面臨的問題:效能越來越差;越來越多資料導致儲存空間不足

二、應用服務分離

應用伺服器:需要更強大CPU

資料伺服器:需要更快的硬碟和更高的記憶體

檔案伺服器:需要更大的硬碟

不同的伺服器承擔不同的角色->效能提升

面臨的挑戰:

資料庫壓力太大導致訪問延遲,進而影響整個網站的效能,使用者體驗受影響

三、使用快取改善效能

常用快取:redis memcach

發展問題:請求連線有限,網站訪問高峰期,應用伺服器成為整個網站的瓶頸

四、應用服務叢集

使用快取後雖然大大減輕了資料庫的讀壓力,有一部分快取和全部寫資料操作要訪問資料庫,使用者到達一定規模後,資料庫成了瓶頸

五、資料庫讀寫分離

發展問題:地域網路差異大如何保證使用者體驗

六、反向代理,CDN加速

加快訪問速度

減輕後端訪問壓力

面臨問題:單資料伺服器存不了資料

七、分散式檔案系統,分散式資料庫

發展問題:資料的儲存需求和檢索越來越複雜

欄位差異大,骷髏表

複雜文字檢索

八、使用NOSQL、搜尋引擎

發展問題:迭代週期太快,牽一髮而動全身

十、業務拆分

面臨問題:

應用間的關係越來越複雜,應用中存在相同操作

後端資料庫要被成千上萬的應用服務連線,資料庫連線資源不足

十一、服務化

架構思路

1、分而治之

2、隨網站所需應對

3、業務驅動技術發展,技術反哺業務