visual studio负载测试中95%的响应时间是如何计算的
How is 95% response time calculated in visual studio load test
在分析 VSTS 负载测试报告时,我们发现端点的响应时间如下
- 平均响应时间:- 0.68
- 90% 的响应时间:- 1.18
- 95% 的响应时间:- 1.34
- 99% 的响应时间:- 1.68
按照 VSTS 的建议,采样率设置为 15 秒(当我们设置低于 15 秒时,我们会收到警告)。我们使用 VSTS 云产品来生成负载。
在性能图中(在结果中)显示的响应时间峰值大约为 0.7 秒,没有超过此值。当我们下载示例时,我们看到所有条目(每 15 秒 1 个条目)的数据与图表上绘制的内容匹配,并且小于 0.7 秒。
我们的 SLA 是支持 1 秒 95%。现在我们无法理解
- 90%、95% 和 99% 的响应时间是如何计算的(使用什么数据)
- 我们如何才能获得有关占 95% 响应时间的请求的更多数据,以便我们进行调试
对于每个不同的计数器,在每个采样间隔中生成一个值,该值显示在图表上。因此,图表通常似乎忽略了峰值。结果表收集了所有值,响应时间的百分位数是通过排除最慢的值来计算的。如果总共收集了 N
个响应时间,那么第 90 个百分位数将排除那些 N
次中最慢的 10%,对于其他百分位数也是如此。要了解响应时间的范围,请比较和对比这些值:
- 百分位数。
- 平均值。但请记住,平均值可能会因一些非常大或非常小的值而失真。
- 中位数。这是通过排除几乎一半的最慢值和相同数量的最快值而找到的。
- 最小值和最大值
Microsoft 有几个关于分析负载测试结果的网页。 This page 是一个开始。在网络上搜索诸如 site:microsoft.com analysing load test results
之类的术语应该会找到更多详细信息。
百分位值由 SQL 存储过程计算得出,可以通过探索负载测试数据库找到这些存储过程。在我的 Windows 10 计算机上,它位于文件中:C:\Users\AdrianHHH\LoadTest2010.mdf
和 C:\Users\AdrianHHH\LoadTest2010_log.ldf
。这些过程也显示在负载测试数据库创建脚本中,该脚本应该在 C:\Program Files\Microsoft Visual Studio 11.0\Common7\IDE\loadtestresultsrepository.sql
中(但更改 11.0
以反映您的 Visual Studio 版本)。
在分析 VSTS 负载测试报告时,我们发现端点的响应时间如下
- 平均响应时间:- 0.68
- 90% 的响应时间:- 1.18
- 95% 的响应时间:- 1.34
- 99% 的响应时间:- 1.68
按照 VSTS 的建议,采样率设置为 15 秒(当我们设置低于 15 秒时,我们会收到警告)。我们使用 VSTS 云产品来生成负载。
在性能图中(在结果中)显示的响应时间峰值大约为 0.7 秒,没有超过此值。当我们下载示例时,我们看到所有条目(每 15 秒 1 个条目)的数据与图表上绘制的内容匹配,并且小于 0.7 秒。
我们的 SLA 是支持 1 秒 95%。现在我们无法理解
- 90%、95% 和 99% 的响应时间是如何计算的(使用什么数据)
- 我们如何才能获得有关占 95% 响应时间的请求的更多数据,以便我们进行调试
对于每个不同的计数器,在每个采样间隔中生成一个值,该值显示在图表上。因此,图表通常似乎忽略了峰值。结果表收集了所有值,响应时间的百分位数是通过排除最慢的值来计算的。如果总共收集了 N
个响应时间,那么第 90 个百分位数将排除那些 N
次中最慢的 10%,对于其他百分位数也是如此。要了解响应时间的范围,请比较和对比这些值:
- 百分位数。
- 平均值。但请记住,平均值可能会因一些非常大或非常小的值而失真。
- 中位数。这是通过排除几乎一半的最慢值和相同数量的最快值而找到的。
- 最小值和最大值
Microsoft 有几个关于分析负载测试结果的网页。 This page 是一个开始。在网络上搜索诸如 site:microsoft.com analysing load test results
之类的术语应该会找到更多详细信息。
百分位值由 SQL 存储过程计算得出,可以通过探索负载测试数据库找到这些存储过程。在我的 Windows 10 计算机上,它位于文件中:C:\Users\AdrianHHH\LoadTest2010.mdf
和 C:\Users\AdrianHHH\LoadTest2010_log.ldf
。这些过程也显示在负载测试数据库创建脚本中,该脚本应该在 C:\Program Files\Microsoft Visual Studio 11.0\Common7\IDE\loadtestresultsrepository.sql
中(但更改 11.0
以反映您的 Visual Studio 版本)。