Java Jmeter:理解吞吐量和KB/sec之间的相关性

Java Jmeter:理解吞吐量和KB/sec之间的相关性,java,jmeter,performance-testing,throughput,Java,Jmeter,Performance Testing,Throughput,我有15个线程组成的线程组,每个线程发送一个32KB的图像(HTTP POST)。在summary report下,吞吐量为550/秒,平均响应时间为25ms,KB/秒显示为148KB/秒。我发现很难把这些数字联系起来。如果我可以管理550个请求/秒,并且每个请求是32KB,那么KB/秒不应该是550*32KB/秒吗 编辑: 即使我只发送一个请求,低于KB/秒的数字也没有意义。我能够关联所有其他数字。1个请求的摘要报告: Samples: 1 Average: 25 Min: 25 Max: 2

我有15个线程组成的线程组,每个线程发送一个32KB的图像(HTTP POST)。在summary report下,吞吐量为550/秒,平均响应时间为25ms,KB/秒显示为148KB/秒。我发现很难把这些数字联系起来。如果我可以管理550个请求/秒,并且每个请求是32KB,那么KB/秒不应该是550*32KB/秒吗

编辑: 即使我只发送一个请求,低于KB/秒的数字也没有意义。我能够关联所有其他数字。1个请求的摘要报告:

Samples: 1
Average: 25
Min: 25
Max: 25
Std.Dev: 0
Error: 0%
Throughput: 40/sec
KB/Sec: 10.62
Avg. Bytes: 272.

从上述结果很容易关联平均时间和吞吐量。我正在传输的映像的大小是32281字节(由linux操作系统报告)。正如aroth在评论中指出的,我怀疑这是否与压缩有关。我尝试发送1MB图像,报告的KB/秒为12.3。

1请求示例中的数学对我来说似乎是正确的

Samples: 1
Average: 25
Min: 25
Max: 25
Std.Dev: 0
Error: 0%
Throughput: 40/sec
KB/Sec: 10.62
Avg. Bytes: 272.
根据上面的数据,每秒有40个请求,平均每秒272字节=(40*272)10880字节的吞吐量(除以1024等于10.625)


问题当然是为什么JMeter认为平均请求大小为272字节,而您认为它是32k-您确定图像被附加了吗?如果是这样的话,我会假设有一些相当大的压缩正在进行。

您如何衡量550/秒的请求速率?这是jmeter在summary report(摘要报告)下吞吐量列中报告的内容。我能找到的所有引用似乎都表明jmeter以每分钟请求数而不是每秒请求数来报告吞吐量。每分钟550个请求的数量与你的其他数字大致相当(实际上,达到每分钟550次上传平均需要约300 KB/秒,但可能148 KB/秒是瞬时读取,或者可能对32 KB图像进行了一些压缩,或者32 KB图像实际上略小于32 KB,等等。)。不,报告的吞吐量是550 req/秒,而不是一分钟。我不确定是否有任何巨大的压缩正在发生,因为我正在发送一个传输编码头为二进制的JPEG图像。如何通过POST请求请求图像?通常,您会将POST发送给控制器,后者将以HTML文件作出响应。可能会发送HTML文件它包含对单个32KB文件的引用是的,我也注意到了,但后来我才计算出平均值。字节是响应的大小,而不是请求的大小。因此KB/Sec实际上是响应吞吐量(也称为服务器吞吐量)这就带来了一个重要的问题,我们如何衡量服务器接受用户生成数据的能力?