zoukankan      html  css  js  c++  java
  • 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%。

  • 相关阅读:
    Unity Shader入门精要之 screen post-processing effect
    Unity---关于游戏小包的记录
    计算机基础补充之原码、反码、补码
    C#接口实现技巧之借助第三方
    lua中产生 1
    游戏文本本地化(一)
    xlua修复C#的委托事件的时候,需要提前做好配置
    xlua 实现协程替换Unity中的协程
    C#定义只能处理枚举类型的泛型类型
    C# : 泛型的继承关系实现的一个可以存放不同数据类型的链表
  • 原文地址:https://www.cnblogs.com/sundar/p/5803302.html
Copyright © 2011-2022 走看看