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%。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?