JMeter - Java HTTP 客户端实现显示 0 连接时间和发送字节

JMeter - Java HTTP Client implementation show 0 connect time and sent bytes

我想知道关于 HTTP 客户端实现的差异,

有选项可以选择 HTTPClient 4 或 Java

但对于一个简单的案例 (www.google.com) Java 实现 总是 在连接时间和发送字节中显示 0 采样器结果:

Connect Time: 0
Sent bytes:0 

虽然 HTTPClient 4 return 每次的值都不同:

Connect Time: 100
Sent bytes:117

请求body相同

GET http://www.google.com/

GET data:


[no cookies]

但是请求 Header 不同,而 HttpClient 也发送 HostUser-Agent

Connection: keep-alive
Host: www.google.com
User-Agent: Apache-HttpClient/4.5.5 (Java/1.8.0_25)

这些差异是否有正当理由?

编辑

Just to make it more confusing, when choosing empty implementation (should use default) the connect time is always 0 but Sent bytes is 从不 0

连接时间:0 已发送bytes:117

Java 和 HttpClient 是 HTTP 请求可以使用的 2 个不同的实现。

java 没有 hc4 丰富,例如它没有实现 :

  • 已发送字节数度量计算
  • 连接时间指标
  • kerberos 身份验证

Java 实现中还缺少其他功能。

当您 select 为空时,将使用 属性 «jmeter.httpsampler » 中的值,默认为 hc4。