HTTP 返回時間 概念 TTFB..

課外學習部分:

什麼是TTFB呢? 
1.TTFB (Time To First Byte),是最初的網絡請求被髮起到從服務器接收到第一個字節這段時間,它包含了 TCP鏈接時間,發送HTTP請求時間和得到響應消息第一個字節的時間。 
注意:網頁重定向越多,TTFB越高,因此要減小重定向 
TTFB優化的方法有:前端

1.減小DNS查詢瀏覽器

2.使用CDN性能優化

3.提前Flush服務器

4.添加週期頭網絡


什麼是TTSR呢? 
2.TTSR(Time to Start Render) 
TTSR-開始渲染時間,指某些非空元素開始在瀏覽器顯示時的時間,這也是一項重要指標,即TTSR越短,用戶越早瀏覽器中的內容,心理上的等待時間會越短。過多的CPU消耗會拖慢TTSR,因此網站中有大量圖片和腳本每每會形成不良用戶體驗。異步

注意 
TTSR優化: 
1.優化TTFB 
2.下降客戶端CPU消耗,即頁面加載初期不要有大腳本運行,把JS腳本放到頁面下方 
3.使用效率較高的CSS選擇器,避免使用CSS表達式 
4.避免使用CSS濾鏡
socket

前端TTSR測試腳本: 
tcp

複製代碼
<head>          <script>              (function(){                  var timeStart = + new Date,                      limit = 1,                      timer = setInterval(function(){                      if((document.body&&document.body.scrollHeight > 0) || (limit++ == 500)){                          clearInterval(timer);                          console.info('TTSR:',+ new Date - timeStart,';duration:',limit);                      }                  },10);              })()          </script>      </head>
複製代碼

在頁面端沒法簡單測試出具體的TTSR,不過能夠經過模擬腳本獲得大概的時間,Firefox提供了一個MozAfterPaint事件,經測試,用於TTSR並不許確,若是有MozBeforePaint事件該有多好。 
性能

什麼是TTDC呢? 
3.TTDC(Time to Document Complete) 
TTDC-文檔完成時間,指頁面結束加載,可供用戶進行操做的時間,等價於瀏覽器的onload事件觸發點。TTDC是比較重要的性能優化對象,TTDC越低,頁面加載速度越快,用戶等待時間越短。 
注意 
TTDC的優化方法有:學習

1.優化TTFB

2.優化TTSR

3.優化首屏時間,將沒必要要的頁面加載放到onload事件以後

TTDC前端測試: 
常見性能測試平臺大多使用IE瀏覽器的DocumentComplete事件來度量TTDC,DocumentComplete事件觸發時,頁面的狀態應是READYSTATE_COMPLETE,因此在頁面中咱們能夠用JS腳本判斷:

複製代碼
var win = window,doc = document;  if(win.attachEvent || doc.hasOwnProperty('onreadystatechange')){  doc.onreadystatechange = function(){   if(doc.readyState == 'complete'){    /**    * test      do something...     */    }  }  }else{    win.addEventListener('load',function(){   /**    * test     do something...    */   },false);  }
複製代碼

 

什麼是TTFL呢? 
4.TTFL(Time to Fully Loaded) 
TTFL-徹底加載時間,指頁面在onload以前和onload事件以後額外加載的內容所花費的時間的總和,即頁面完徹底全加載完畢消耗的總時間。 
注意 
TTFL的優化方法:

1.優化TTFB

2.優化TTSR

3.優化TTDC

4.延遲加載

5.異步加載

6.按需加載

=======================================================================================================================================================

如何優化網頁首字節時間 1: 看一下詳情分析頁面。 DNS解析:若是是 DNS 解析時間太長,那是你的域名解析服務器很差,請更換靠譜的 NS 服務器。 初始化鏈接:若是是初始化鏈接的時間太長,那是你機房的網絡很差,請更換更好的機房 若是上面兩個都不是。那就是你的代碼性能很差,代碼執行消耗的時間太長。請優化代碼,或者更換更好的機器。 2: 客戶端t1時刻發起對於某個url的請求,通過DNS解析獲取相應的IP地址後,發起對該IP地址的socket鏈接,在完成三次握手創建tcp鏈接後,客戶端發送http請求信息,服務端收到請求後返回響應的內容,當客戶端在t2時刻收到服務端返回內容的第一個字節,則第一字節時間=t2-t1。 第一字節的時間= DNS解析的時間+socket三次握手時間+http請求時間+第一字節返回的時間。 首字節的時間是0,說明很快呀。不須要作優化。 謝謝使用阿里測!

相關文章
相關標籤/搜索