asp.net – 用于分析在azure上运行的网站性能的步骤

前端之家收集整理的这篇文章主要介绍了asp.net – 用于分析在azure上运行的网站性能的步骤前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
一般来说,我对运营网站都很陌生.我熟悉桌面应用程序的统计分析器,但不确定如何开始分析网站,因为存在许多其他潜在的瓶颈,我不确定哪些分析器可用于网站.

我环顾四周,在其他问题上看到了有用的建议,但我不确定它们是一个非常完整的解决方案.主要建议是来自this answer的天蓝色性能计数器和建议.

总结他们是:
使用firebug单独确定渲染时间和加载时间,以便可以判断是否存在渲染问题或服务器问题.

如果是服务器端:
像一个带有单个gif的页面一样测试一个小的静态页面.如果这很慢,则会出现cpu问题.否则,可能是IO绑定或数据库性能有问题.

可以使用性能计数器来检查服务器方面,例如:
记忆
垃圾收集
tcp / ip问题
发送/接收的字节数
请求,排队,拒绝请求
请求等待时间,处理时间

从我天真的角度来看,这个列表中似乎缺少的一些东西就是对传统桌面应用程序的分析,即堆栈看起来像什么时间的百分比(即我们花费时间在哪些功能,以及什么上下文).另一个缺失的项目是分析数据库性能,这似乎在天蓝色上可能与在本地环境中不同,特别是如果开始处理缩放.另一个是花在第三方服务请求上的时间,尽管可以用天蓝色的性能计数器(?)来完成.

我为这个问题的天真性质道歉.我在这里找不到哪些工具和方面来描述一个天蓝色的MVC asp.net网站,你会对上面的列表做出哪些改变?

解决方法

数据库调用,业务逻辑,呈现视图,甚至客户端性能(例如,可能运行的任何jQuery)方面,分析站点有很多方面.

StackOverflow’s MiniProfiler是最简单的事情之一,只需安装一个NuGet包,添加一些Javascript包含,并在using()块中包装你想要测试的任何内容,你就会看到执行时间(包括LINQ-to-sql)和EF).如果您想要更细粒度的单个呼叫时间,您甚至可以创建步骤.

MiniProfiler的优点是你可以根据环境启用/禁用,这使它适合在Azure中运行(而不是说,Visual Studio Profiler).

您还可以查看Azure Performance Counters,它将为您提供系统资源的概念,但不是MiniProfiler的意义上的概要分析.但是,它会让您了解网络延迟以及cpu和内存利用率.

一旦您满意,您可以使用Chrome’s Developer Tools在客户端配置您的应用程序.它会让你了解你的Javascript正在做得多好,包括CSS选择器和渲染.

另外值得注意的是,Visual Studio在一些更高版本中有一个非常好的Profiler,可以让您深入了解您的代码.在方法,通话计数等方面花费的时间

在这四种方法之间,您应该能够找到大多数瓶颈,尤其是第一次通过时.

猜你在找的asp.Net相关文章