網際網路高併發架構的8種設計模式演化
阿新 • • 發佈:2019-01-01
1、單庫單應用模式
這種是最簡單的模式,即一個數據一個應用伺服器,一般在產品釋出初期使用會比較方便,單日30萬到50萬PV以下一般沒有問題。
2、內容分發模式
在主機中使用了靜態檔案快取之後,還可以使用CDN的方式把靜態檔案分發到離使用者最近的節點上以達到快速響應的目的,一般在百萬級別的PV時需要使用。
3、查詢分離模式
主要是指資料庫的讀寫分離,能夠降低響應延時,在千萬級別的PV時會使用。
4、微服務模式
微服務就是把一個單應用拆分成多個服務,每個服務部署在各自的主機中,最後通過一個ESB來管理和排程這些服務,優點是各司其職不會出現混亂和一致性癱瘓,缺點也很明顯,就是整合測試和協同釋出難度大增。
5、分庫分表模式
當一個表的資料出現上億級別的時候就要考慮分表了,比如訂單資料等,根據使用者的屬性或者時間來拆分成多個表儲存,甚至是拆分成多個庫儲存。
6、多級快取模式
可以把資料快取到redis、memcache或者分散式檔案系統之中,一般是在500萬PV之上需要使用。
7、彈性伸縮模式
當應用容易出現波峰波谷的情況時使用彈性伸縮模式可以有效降低硬體資源的成本,特別是在使用公有云的時候這個成本的下降積累會是一個比較大的值。
8、多機房模式
如果是自建機房可以在南北方各地安置機房以達到有效降低延遲,以及防止同時宕機的可能性出現。如果是使用公有云可以採用多個節點部署。另外一方面,採用CDN的也是多機房的一種實際應用。
以上就是在網際網路高併發情況下可能採用的幾種架構策略。