在ABP的WebApi中,对其性能进行分析监测是很有必要的.而悲剧的是,MVC项目中可以使用的MiniProfiler或Glimpse等,这些都不支持WebApi项目,而且WebApi项目通常也没有界面,不能进行性能分析的交互.在上一篇教程中,通过集成SwaggerUI解决了界面的问题.在这篇文章中,我们就来一步步实现为WebApi项目集成Miniprofiler.集成后,我们可以监控EF执行效率,执行语句,页面执行时间等,这些结果将以很友好的方式显示在界面上. 问题分解 本质上,集成Minip…
介绍 作为一个开发人员,你知道如何分析自己开发的Api性能么? 在Visual Studio和Azure中, 我们可以使用Application Insight来监控项目.除此之外我们还可以使用一个免费工具Stackify Prefix,它允许追踪所有的Http请求, 这里有一篇博客讲解了如何使用Stackify Prefix(Scalable and Performant ASP.NET Core Web APIs: Profiling and Monitoring). 本文我将引入另外一个工…
在ABP模板项目中,通过SwaggerUI可以为我们的WebApi生成动态的可交互接口文档页面,从而可以很方便的测试调用我们的WebApi接口. 一.集成Swagger 右键项目YoYo.Web,打开NuGet程序包管理器,添加Swashbuckle. 其中包含了程序和UI,安装后在App_Start文件夹下生成SwaggerConfig.cs. 完成这一步,Swagger已经集成完毕. 可以访问http://localhost:XXXX/swagger/ui/index. 如果出现异常,可以先…
前言: 在日常开发中,应用程序的性能是我们需要关注的一个重点问题.当然我们有很多工具来分析程序性能:如:Zipkin等:但这些过于复杂,需要单独搭建. MiniProfiler就是一款简单,但功能强大的应用新能分析工具:可以帮助我们定位:SQL性能问题.响应慢等问题. 本篇文章将介绍MiniProfiler在Asp.Net Core中如何使用 一.MiniProfiler介绍 MiniProfiler是一款针对.NET, Ruby, Go and Node.js的性能分析的轻量级程序.可以对一个…
什么是 Xhprof?XHProf是facebook 开发的一个测试php性能的扩展,本文记录了在PHP应用中使用XHProf对PHP进行性能优化,查找性能瓶颈的方法. 它报告函数级别的请求次数和各种指标,包括阻塞时间,CPU时间和内存使用情况. XHProf分析报告有助于理解被执行的代码的结构,它有一个简单的HTML的用户界面( PHP写成的). 基于浏览器的性能分析用户界面能更容易查看,或是与同行们分享成果. 也能绘制调用关系图. Xhprof 与 Xdebug 区别Xdebug 是一个开放…
在分析python代码性能瓶颈,但又不想修改源代码的时候,ipython shell以及第三方库提供了很多扩展工具,可以不用在代码里面加上统计性能的装饰器,也能很方便直观的分析代码性能.下面以我自己实现的一个快排代码为例,带你使用集中不同的性能分析工具. def quick_sort(data, low, high): if low >= high: return left, right = low, high key = data[left] while left < right: whil…
第一步:检查系统的状态 通过操作系统的一些工具检查系统的状态,比如CPU.内存.交换.磁盘的利用率.IO.网络,根据经验或与系统正常时的状态相比对,有时系统表面上看起来看空闲,这也可能不是一个正常的状态,因为cpu可能正等待IO的完成.除此之外,还应观注那些占用系统资源(cpu.内存)的进程. 1.用vmstat察看关于内核进程,虚拟内存,磁盘,cpu的的活动状态 [root@ks01 ~]# vmstatprocs -----------memory---------- ---swap-- -…
Transactions(用户事务分析) 用户事务分析是站在用户角度进行的基础性能分析. 1.Transation Sunmmary(事务综述) 对事务进行综合分析是性能分析的第一步,通过分析测试时间内用户事务的成功与失败情况,可以直接判断出系统是否运行正常. 2.Average Transaciton Response Time(事务平均响应时间) “事务平均响应时间”显示的是测试场景运行期间的每一秒内事务执行所用的平均时间,通过它可以分析测试场景运行期间应用系统的性能走向. 例:随着测试时间…
MiniProfiler官网:http://miniprofiler.com/ MiniProfiler的一个特别有用的功能是它与数据库框架的集成.除了.NET原生的 DbConnection类,MiniProfiler还内置了对实体框架(Entity Framework)以及LINQ to SQL.RavenDb和MongoDB的支持.任何执行的Step都会包括当时查询的次数和所花费的时间.为了检测常见的错误,如N+1反模式,profiler将检测仅有参数值存在差异的多个查询. 跟蓝狐学MVC…
JDK自带的JAVA性能分析工具.它已经在你的JDK bin目录里了,只要你使用的是JDK1.6 Update7之后的版本.点击一下jvisualvm.exe图标它就可以运行了. 这里是VisualVM 的官方网站:https://visualvm.dev.java.net,资料很全,同时提供VisualVM最近版本下载. 1.安装 VisualVM 是Netbeans的profile子项目,已在JDK6.0 update 7 中自带(java启动时不需要特定参数,监控工具在bin/jvisua…