【刷題】麪筋-頁面加載慢的緣由
背景
- 記得之前有個培訓班的老師過來宣傳,他當時問了咱們一個問題,「打開一個網頁慢,你能說出10個緣由麼?」,我腦海裏馬上就出現了網速慢、電腦卡等緣由,可是發現本身能說出的不超過五個,本身仍是學web的,GG。今天忽然想到了這個問題,就總結下
帶寬不足
- 首先想到的就是本身網速的問題,可是通常網速在1M以上的,打開網頁通常不會是很慢的。網站服務器的帶寬不夠的話,當大量用戶訪問的時候,網頁的加載也是很慢的,這就是網絡的出口端和入口端兩個方面
硬件配置低
- 本機的配置也會是一方面的,可是隻要不是老賽揚單核+512M的配置,通常不會是電腦配置的問題。服務器端的配置也是一樣的道理。
CPU或者是內存被佔滿
- CPU或者是內存被佔滿的時候,打開網頁非常會很慢的,由於整個電腦都很慢
DNS解析慢
- 域名的解析是須要專門的域名解析服務器來完成的,DNS解析包括往復解析的次數及每次解析所花費的時間,它們二者的積便是DNS解析所耗費的總時間,在http請求的過程當中,域名解析和創建鏈接佔的時間不少。
JS阻塞請求
- 寫的js代碼出現問題,解析就會花費很長時間,這兩個js請求之間會出現一個很大的空隙,就會致使這段時間的資源加載都被阻塞住,
接受數據時間過長
- http請求的大部分時間應該花在後面幾個階段,好比等待響應和接收數據。可是,若是接收數據的時間太長了,長到數百毫秒甚至以秒計算的時候,那也是有問題的。這種狀況通常是由於下載的內容過重了,例如大圖片、大腳本等。這類問題可使用GZIP壓縮、圖片壓縮或者JS/CSS的minify等手段來解決。
加載某個資源太慢
- 若是某個請求比其餘的請求多出不少的時間,那麼通常狀況就是某個資源的加載太慢,致使了整個網頁變慢,緣由有多是1)資源在第三方站點上,他們很慢;2)這個資源太大了;3)這個資源使用的域名有問題
後端代碼問題
- 主要有代碼冗餘、數據庫發生鎖死、動態請求時間過長等,這就須要RD優化一切能夠優化的東西了
前端頁面請求的資源過多
- onload以前若是有幾百行,速度天然會慢的,若是請求的資源不存在,那麼速度將會更慢
網頁自己中包含了追蹤或者是分析用戶的工具
- 致使網頁的加載時間變的慢,好比以前海盜灣中會給用戶的電腦插入挖礦的js腳本
。。前端
參考連接
END
歡迎關注本站公眾號,獲取更多信息