?一、動靜分離
把靜態的,耗費大量帶寬資源、請求資源的數據獨立出來,緩存到cdn里去,包括產品詳情頁,圖片、視頻、js、css通通打包放到cdn里去,封住一部分流量,用cdn去承擔。
二、熱數據預熱緩存
將一些熱點數據,比如特賣的、營銷資源重點投放的數據提前預熱緩存到redis里面,提升整個系統的讀性能。
三、動態數據和自己的服務器解耦
應用脫離了數據之后,就是無狀態的。在無狀態的基礎上,就可以做集群。
??
互聯網技術的核心就是集群。集群的基本架構就是前面一個負載均衡,下面掛一些同樣業務部署的服務器。比如阿里云雙十一時,就有幾十萬臺服務器支撐。這樣,用戶就很容易應對高可用的需求。云服務廠商比如阿里云,就會提供一種彈性伸縮方案。
四、考慮一些極特殊情況的高可用場景
比如,之前把所有業務都放在阿里云的某一個region里面的某一個可用區,這樣在極特殊的情況下,比如說比如某個區域的整個入口的光纖都被挖掘機給挖斷,這樣這個地區的機房肯定就是不可用了。這樣,用戶自己的服務也就完全中斷。
用戶為了在這種極特殊的情況下,還能夠對外提供服務,就需要在架構上做一定的改進。
比如通過阿里云的跨機房的高可用解決方案來滿足這種極特殊的情況下的需求。支付寶也曾經出現過這種問題。比如一個區域的機房斷了,某一個區域的支付寶就不可用。
所以用戶需要對自己業務量級進行判斷,根據不同的業務量級和用戶數量做一個選擇。
?
?