Jmeter以简单的术语解释结果

时间:2017-02-11 00:11:27

标签: jmeter performance-testing

所以我试图测试一个网站,并尝试通过“常识”解释聚合报告(因为我试着查找每个结果的含义,我无法理解它们应该如何解释)。

TEST 1

Thread Group: 1
Ramp-up: 1
Loop Count: 1

 - Samples 1
 - Average 645
 - Median 645
 - 90% Line 645
 - Min 645
 - Max 645 
 - Throughput 1.6/sec

所以我假设第一个结果是最好的结果。

TEST 2

Thread Group: 5
Ramp-up: 1
Loop Count: 1

 - Samples 1
 - Average 647
 - Median 647
 - 90% Line 647
 - Min 643
 - Max 652 
 - Throughput 3.5/sec

我假设TEST 2的结果并不那么糟糕,因为结果接近TEST 1。

TEST 3

Thread Group: 10
Ramp-up: 1
Loop Count: 1

 - Samples 1
 - Average 710
 - Median 711
 - 90% Line 739
 - Min 639
 - Max 786 
 - Throughput 6.2/sec

鉴于存在巨大差异,我假设如果10个用户同时请求该网站,它将无法正常运行。如何用简单的术语解释这组测试?

2 个答案:

答案 0 :(得分:0)

它与可用资源一样简单。

响应时间取决于很多因素,以下是关键因素:

  1. 服务器机器资源(网络,CPU,磁盘,内存等)
  2. 服务器机器配置(服务器类型,节点数,线程数等)
  3. 客户端计算机资源(网络,CPU,磁盘,内存等)
  4. 正如您所了解的那样,主要是关于服务器如何忙于响应其他请求以及客户端计算机忙于生成/处理负载的数量(我假设您在单机中运行所有10个用户)

    了解实际原因的最佳方法是Monitoring这些资源使用nmon for linux& perfmon or task manager for Windows(或任何其他监控工具)并了解运行1, 5, 10用户时的差异。

    除了理论部分,我认为它正在谈论时间,因为你正在把服务器花费时间的突然加载处理先前的请求。

    您是否在同一台计算机上使用客户端和服务器?如果是,那将告诉我们系统资源既用于客户端线程(10个线程)又用于服务器线程。

    Resposne Time =客户端向服务器发送请求TIME +服务器处理TIME + Server将resposne发送到客户端TIME

    在您的情况下,可能会增加一个或多个TIME。

    如果您有良好的带宽,则可能是server processing time

答案 1 :(得分:0)

您的结果令人困惑。

对于5和10的线程数,您给出了相同数量的样本 - 1.它应该是1(1个线程),5个(5个线程)和10个线程的10个样本。您的实验在统计上有较少的样本可以得出任何结论。您应该以这样的方式对负载进行建模,即在增加5个和10个线程之前,1个线程负载持续较长时间。如果您正在运行一个小测试来评估应用程序的可伸缩性,那么您可以执行类似

的操作

1个线程 - 15分钟

5个主题 - 15分钟

10个线程 - 15分钟

提供15分钟内每个时段的观察结果。如果您的应用程序确实是扩展,即使在负载增加的情况下也应该保持相同的响应时间。

查看结果,我发现您的申请没有任何问题。没有什么变化。同样,您没有多少样本可以导致统计相关的结论。