2011-07-12 27 views
1

我嘗試使用Apache板凳基準我的申請,我得到「有趣」的結果應用放緩

看着從我的應用程序日誌,並從它似乎有一個大的discrepency阿帕奇板凳輸出。我正在對網絡延遲進行粉飾,但在對「localhost」進行基準測試時,這種差異依然存在。

如何確定滯後時間,因爲它似乎是非網絡基礎,而不是基於我的代碼。

上訴機構報告

Connection Times (ms) 
       min mean[+/-sd] median max 
Connect:  0 0 0.6  0  2 
Processing: 849 1353 511.1 1247 3233 
Waiting:  848 1353 511.1 1247 3233 
Total:  850 1353 511.4 1247 3235 

Percentage of the requests served within a certain time (ms) 
    50% 1247 
    66% 1329 
    75% 1497 
    80% 1595 
    90% 1890 
    95% 3235 
    98% 3235 
    99% 3235 
100% 3235 (longest request) 

的應用程序日誌

0.457508658971436 
0.487119069125137 
0.64489275544097 
0.308814075251248 
0.347146275286174 
0.413624988232478 
0.346384754750842 
0.440318102805972 
0.383319550604894 
0.501201249649599 
0.546330090455061 
0.324228916712541 
0.503295781085244 
0.258641210789654 
0.419751448936304 
0.344909658677117 
0.368373660208557 
0.391326015130321 
0.408486124472911 
0.432033417312903 
0.841326557573717 
0.380724921354457 
0.982096568223106 
0.988279723010904 
0.477995521167366 
0.553187274907863 
0.604180103806168 
0.605961767889521 
0.5603846238645 
0.469985557007126 
0.602743853678869 
0.613931136285929 
0.518576586533195 
0.589374548765836 
0.541912501430476 
0.56989243172475 
0.516491854075027 
0.409568911484087 
0.245887841603729 
3.22576074186659 

我的代碼

public void ProcessRequest(HttpContext context) 
    { 
     var fullTimer = new utilities.HiPerfTimer(); 
     fullTimer.Start(); 
     // CUSTOM CODE WENT HERE 
     fullTimer.Stop(); 
     System.Diagnostics.Debug.WriteLine(fullTimer.Duration); 
    } 

回答

0

,我肯定會在看像一個分析器。我用Redgate's ANTs performance profiler來測試一些緩慢運行的代碼。儘管我認爲代碼非常簡單,但它顯示出一條線的執行時間佔48%。

還有許多其他性能分析器,您可以使用免費試用版來立即顯示導致放緩的原因。