web的優化就是一場阻止http請求最終訪問到數據庫的戰爭。
優化的方式就是加緩存
,在各個節點加緩存。前端
熟悉流程及節點,才能定位性能的問題。並且優化的順序通常也是按請求的流程逐一優化。這裏的流程只是作個概要,並不表明全面。nginx
整個流程是以最快的方式讓用戶看到結果
web
思路是:把看不見的http,具體化、可視化
。算法
定位是優化的前提。沒有準確的定位就沒法有效的解決問題。sql
例如:
數據庫
定位結果瀏覽器
例如:
緩存
定位結果服務器
給每一個方式添加一個aop,監控期執行時間
例如:網絡
long begin = System.currentTimeMillis();
//執行的方法或者代碼
long end = System.currentTimeMillis();
System.out.print("一共執行時間:"+(end-begin));
定位結果
定位結果
思路:針對於http請求的節點按順序解決。暫時不考慮從分佈式
和羣集
的解決方案入手優化。
優化的方面不只限於上面的方法。有些也沒有一一贅述。好比說:加內存也是優化的不錯解決方案。還有操做系統級別,io讀寫,網絡請求等問題。