我有一个ASP.NET应用程序,它始终使用生产服务器上75% - 100%的CPU.如何分析应用程序以确定哪些代码部分占用了最多的CPU?我看过几个不同的工具(Xte Profiler,EQATEC,dotTrace),但他们似乎都希望你在他们的工具中加载和运行应用程序.在我看来,他们希望您在他们的工具中加载应用程序并在本地运行测试(而不是在生产中).我希望在应用程序运行的同时对应用程序进行概要分析,让人们看到它实际发生了什么.这可能吗?
我是应用程序分析的新手,所以请原谅我,如果我错过了一些明显的东西,或者我没有正确地思考这个问题.
谢谢,科里
Sam Saffron(StackoverFlow创建者之一)不久前编写了一个很棒的命令行工具,但不幸的是已经放弃了它.
我的一个朋友分叉代码使它在2015年工作:
https://github.com/jitbit/cpu-analyzer
(该页面有Sam的帖子链接,解释了如何使用它)
关于这个工具的好处(除了"无需安装"可移植性,cmd-line接口等等)是像NewRelic等APM包只监视http请求.如果您的应用程序有一些后台主题 - 它们将无济于事.
rbo*_*man -1
最好的选择是在您自己的机器上分析您的代码,以确定它在哪里花费了时间。
获取十天免费试用期:
http://www.jetbrains.com/profiler/
以下是一些可帮助您继续操作的链接:
http://msdn.microsoft.com/en-us/library/ms178643(v=VS.100).aspx
http://www.codeproject.com/KB/aspnet/10ASPNetPerformance.aspx
| 归档时间: |
|
| 查看次数: |
7242 次 |
| 最近记录: |