1. 程式人生 > >fiddler進行弱網測試

fiddler進行弱網測試

fiddler模擬限速的原理

我們可以通過fiddler來模擬限速,因為fiddler本來就是個代理,它提供了客戶端請求前和伺服器響應前的回撥介面,我們可以在這些接口裡 面自定義一些邏輯。Fiddler的模擬限速正是在客戶端請求前來自定義限速的邏輯,此邏輯是通過延遲傳送資料或接收的資料的時間來限制網路的下載速度和 上傳速度,從而達到限速的效果。

他提供了一個功能,讓我們模擬低速網路環境…啟用方法如下:

Rules → Performances → Simulate Modem Speeds :模擬調變解調器的速度

啟動fiddler需要進行如下設定:

1.設定埠號:

 

allow remote computers to connect “允許遠端計算機連線”為設定的代理可以連線到fiddle上,必須勾選

2.重啟fiddle;

3.設定模擬調變解調器的速度


4.設定手機代理

手機代理設定“ip地址為本機的ip,埠號為之前設定的埠號(確保埠號不被佔用)”

5.手動設定設定上行,下行速率,模擬網路速度的原理,每上傳/下載1KB 要delay 多久…


網路取值的演算法就是 1000/下載速度 = 需要delay的時間(毫秒),比如50kb/s  需要delay200毫秒來接收資料。

查詢程式碼如下:

if (m_SimulateModem) {

            //Delay sends by 300ms per KB uploaded. //每延遲300ms傳送1kb的資料,也就是每1s傳送3kb的資料

           oSession["request-trickle-delay"] = 300

            //Delay receives by 150ms per KB downloaded.

           oSession["response-trickle-delay"] = 150//每延遲150ms下行1kb的資料

        }

請注意,當你存檔之後,原本已經勾選的SimulateModem Speeds 會被取消勾選,要記得再到Rules → Performances → Simulate Modem Speeds 勾選喔!

6.設定完成後,清空原有的log,並使用你的app進行弱網條件下的操作,

選擇第一個請求和最後一個請求,可獲得整個頁面載入所消耗的總體時間。從條形圖表中還可以分別出哪些請求耗時最多,從而對頁面的訪問進行訪問速度優化

如下圖:


不同請求耗時多少的圖形表,獲取那種資源耗時最大,進而進行優化:

如下圖