優化Web中的效能

2022-09-17 14:39:15 字數 1391 閱讀 5806

web的優化就是一場阻止http請求最終訪問到資料庫的戰爭。

優化的方式就是加快取,在各個節點加快取。

熟悉流程及節點,才能定位效能的問題。而且優化的順序一般也是按請求的流程逐一優化。這裡的流程只是做個概要,並不代表全面。

整個流程是以最快的方式讓使用者看到結果

思路是:把看不見的http,具體化、視覺化

定位是優化的前提。沒有準確的定位就無法有效的解決問題。

看整個請求的時間

看整個頁面載入的時間

看頁面載入的資料大小

看頁面請求數

例如:

定位結果

是後台請求慢

是前端載入慢(document,js,image,request數等)

看整個請求的時間

看sql的時間(這個在資料庫通過慢日誌也可以)

例如:

定位結果

哪些url是慢的

哪些url是最常用的

哪些sql是慢的

通過system.out.print或者打斷點來定位

給每個方式新增乙個aop,監控期執行時間

例如:定位結果

哪乙個方法或者哪一段**效能慢

慢日誌定位結果

哪些sql是慢的。

思路:針對於http請求的節點按順序解決。暫時不考慮從分布式群集的解決方案入手優化。

加gzip(減少http的請求資料量)

加靜態資源的快取

nginx快取整合url級別的快取

動靜分離

優化迸發協議

新增快取

減少io(減少迴圈的io,通過批量獲取,然後在**級別去處理,優化演算法,把樹狀的複雜度變為平級複雜度)

新增索引

加冗餘資料

修改表結構設計(這個很重要,有的時候是因為表設計不合理導致的,可以通過調整設計來解決)

新增快取

優化的方面不僅限於上面的方法。有些也沒有一一贅述。比如說:加記憶體也是優化的不錯解決方案。還有作業系統級別,io讀寫,網路請求等問題。

優化Web中的效能

web的優化就是一場阻止http請求最終訪問到資料庫的戰爭。優化的方式就是加快取,在各個節點加快取。熟悉流程及節點,才能定位效能的問題。而且優化的順序一般也是按請求的流程逐一優化。這裡的流程只是做個概要,並不代表全面。整個流程是以最快的方式讓使用者看到結果 思路是 把看不見的http,具體化 視覺化...

Web效能優化

我們先來看乙個瀑布圖來確定乙個頁面效能問題是由哪些項造成的。chorome 自帶開發人員工具 圖中每一行表示乙個 請求,每乙個請求都有一條時間線,用於標識這個請求所花費的時間。如果將滑鼠放到某一條時間線上,可以看到以下資訊 1 首先看一下哪個請求花費的時間比較長,看看這個請求的時間線資訊,確定是伺服...

web效能優化

可以用gulp的gulp uglify gulp minify css模組完成 還可以用webpack的uglifyjsplugin壓縮外掛程式完成。通過css sprites將多個整合到乙個中,在用css來定位。伺服器在處理大流量的資料是十分困難的,這最終導致頁面載入速度變慢。cdn是位於全球不同...