總結一下三高(高性能、高併發、高可用)系統在架構時常見的模式及技術。前端
面向互聯網的三高系統,最關注的軟件質量屬性是:性能、可用性、伸縮性、擴展性、安全性。數據庫
而構建此類系統,最多見的架構模式有:橫向分層、縱向分割、分佈式化、集羣化、使用緩存、使用異步模式、使用冗餘、自動化(發佈、部署、監控)。瀏覽器
具體來講,能夠在不一樣層次經常使用的技術有:緩存
前端架構安全
- 瀏覽器優化技術:合理佈局,頁面緩存,減小http請求數,頁面壓縮,減小 cookie 傳輸。
- CDN
- DNS負載均衡
- 動靜分離,靜態資源獨立部署
- 動態圖片獨立提供服務
- 反向代理
應用層架構服務器
- 業務拆分
- 負載均衡
- 虛擬化服務器、容器化
- 無狀態(以及分佈式 Session)
- 分佈式緩存
- 異步、事件驅動架構、消息隊列
- 多線程
- 動態頁面靜態化
服務層架構cookie
- 分佈式微服務(分級管理,超時設置,異步調用,服務降級,冪等性設計。)
- 同應用層架構
存儲層架構多線程
- DFS
- 關係數據庫路由
- No S QL 數據庫
- 數據同步
- 數據冗餘
安全架構架構
- Web攻擊(XSS、Sql Injection)
- 數據加密
- 密鑰管理
發佈、運維併發
- 自動化測試與發佈
- 灰度發佈
- 瀏覽器數據採集
- 服務器業務數據採集
- 服務器性能數據採集
- 系統監控
- 系統報警
機房
暫時就寫這麼多,之後想到了再加……