MiniProfiler安裝使用心得


MiniProfiler簡介:

MVC MiniProfiler是Stack Overflow團隊設計的一款對ASP.NET MVC的性能分析的小程序。可以對一個頁面本身,及該頁面通過直接引用、Ajax、Iframe形式訪問的其它頁面進行監控,監控內容包括數據庫內容,並可以顯示數據庫訪問的SQL(支持EF、EF CodeFirst等 )。並且以很友好的方式展現在頁面上。

該Profiler的一個特別有用的功能是它與數據庫框架的集成。除了.NET原生的 DbConnection類,profiler還內置了對實體框架(Entity Framework)以及LINQ to SQL的支持。任何執行的Step都會包括當時查詢的次數和所花費的時間。為了檢測常見的錯誤,如N+1反模式,profiler將檢測僅有參數值存在差 異的多個查詢。

MiniProfiler是以Apache License V2.0協議發布的,你可以在NuGet找到。配置及使用可以看這里:http://code.google.com/p/mvc-mini-profiler

為建立快速的網站黃金參考標准,雅虎2007年為網站提高速度的13個簡易規則

以上這一段是照抄的張善友的博客,原文地址:http://www.cnblogs.com/shanyou/archive/2012/04/03/2430977.html

MiniProfiler安裝:

注:我安裝的EF6,所以選擇此版本,其它版本可對應選擇。

注:這里的MVC4是適用MVC4和5兩個版本的

到這里,我們需要安裝的程序包就都已經安裝好了。

 MiniProfiler使用:

首先,在你的Global.asax文件中加入:

protected void Application_BeginRequest()
        {
            if (Request.IsLocal)//這里是允許本地訪問啟動監控,可不寫
            {
                MiniProfiler.Start();
               
            }
        }

        protected void Application_EndRequest()
        {
            MiniProfiler.Stop();
        }

然后找到你需要監控的頁面,在頁面中加入:

@using StackExchange.Profiling;
@MiniProfiler.RenderIncludes();

注:如果想監控所有頁面,可將其加入到布局頁中

然后在Web.config頁面中加入:

<system.webServer>
<handlers>
<add name="MiniProfiler" path="mini-profiler-resources/*" verb="*" type="System.Web.Routing.UrlRoutingModule" resourceType="Unspecified" preCondition="integratedMode" />
</handlers>
</system.webServer>

運行后效果:

 MiniProfiler監測EF:

在Global.asax文件中加入MiniProfilerEF6.Initialize();,並引入對應命名空間using StackExchange.Profiling.EntityFramework6;

然后隨意寫個 controller測試一下:

運行后:

在這里我用MiniProfiler對兩個查詢進行了分類,我們可以看到兩個查詢分別用了733.3ms和1027.5ms,占整個頁面加載的52.4%。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM