在 IIS 中托管的 ASP.NET 应用程序的压力/负载测试期间,我应该在应用程序服务器上监视什么?
例如,Windows 中内置的实用程序性能监视器有大量我可以监视的计数器。但是,我什至不知道这些计数器的一半实际上意味着什么?我知道我想看看内存、处理器、网络等东西......但它非常笼统。
如何成功找到问题区域?
你们中的一些人过去使用过什么计数器?
最佳答案
我们观察这些指标来确定请求是否得到及时处理以及数量是否随所应用的负载线性扩展:
- 排队的请求
- 当前请求
- 请求执行
- 请求成功
- 请求数/秒
我们还将观察这些内容以查找应用程序问题
- 错误/秒
- 未处理的执行错误/秒
为了监控虚拟机内存,我们查看:
- CLR 堆大小
- CLR 第 0、1 和 2 代垃圾回收
- CLR GC 时间百分比
对于锁定条件,我们观察:
- CLR 锁定争用
- CLR 锁争用/秒
- CLR 锁争用队列长度
根据应用程序,我们可能会查看其他内容,例如线程计数,但以上是我们最常查看的内容。
关于load-testing - Web应用程序负载测试: What metrics to look at?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4881425/