当前位置: 首页 > 知识库问答 >
问题:

Java和HTTP客户端4在JMeter中实现时发送字节和连接时间的差异

孙嘉
2023-03-14

我正在使用Jeter进行webservice-Restful测试。

我得到以下错误:

软件导致的连接中止:套接字写入错误

对于post方法,我将发送大小为1MB的JSON请求,并使用HTTPclient4实现。

后来我尝试使用Java实现,在那里我得到了成功的响应,但Java的发送字节数为0,而HTTPclient4的发送字节数非常高。

取样器结果:

Thread Name: Thread Group 1-1
Sample Start: 2019-02-19 10:00:57 EST
Load time: 770
Connect Time: 295
Latency: 770
Size in bytes: 151
Sent bytes:1112854
Headers size in bytes: 151
Body size in bytes: 0
Sample Count: 1
Error Count: 0
Data type ("text"|"bin"|""): 
Response code: 200
Response message: OK


HTTPSampleResult fields:
ContentType: 
DataEncoding: null

取样器结果:

Thread Name: Thread Group 1-1
Sample Start: 2019-02-19 10:06:08 EST
Load time: 217
Connect Time: 0
Latency: 217
Size in bytes: 151
Sent bytes:0
Headers size in bytes: 151
Body size in bytes: 0
Sample Count: 1
Error Count: 0
Data type ("text"|"bin"|""): 
Response code: 200
Response message: OK


HTTPSampleResult fields:
ContentType: 
DataEncoding: null

JAVA实现如何工作,以及为什么jmeter中的JAVA实现的字节大小为0。

请帮帮我

共有1个答案

轩辕风华
2023-03-14

Java实现不计算发送的字节,这就是为什么你得到0:

  • https://github.com/apache/jmeter/blob/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPJavaImpl.java

只有HTTPClient 4执行:

  • https://github.com/apache/jmeter/blob/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java#L630
 类似资料:
  • 我正在用C语言测试一些代码,发现TCP套接字调用有奇怪的行为。 > 我定义了一个监听线程,它同步地接受客户机,在接受客户机之后,它会在for循环中处理它,直到断开连接。因此,一次只处理一个客户机。所以我在一个循环中调用,然后在一个内部循环中调用,直到收到一个空缓冲区。 我与客户端启动5个线程,我调用,,最后 我在任何电话中都没有出错。一切似乎都很好。 然而,当我在服务器端打印收到的消息时,结果发现

  • 我不知道他们怎么可能不同。不同之处在于客户端的空间比服务器上的空间多,所以当我尝试在服务器上解析时,我得到了这个结果:解析DOM-org。xml。萨克斯。SAXParseException下面是代码,注释中包含消息:

  • 问题内容: 关于POODLE漏洞,如果我理解正确,则它要求客户端在无法使用服务器发布的更高版本协议与服务器建立安全通道时,会自动将TLS协议降级为SSLv3。 当无法与服务器建立TLS会话时,常见的Java HTTP客户端库,特别是javax.net.ssl.HttpsURLConnection和Apache HttpClient是否会自动降级TLS协议?如果不是,我是否可以纠正它们不受POODL

  • 问题内容: 我必须为给定的WSDL文件实现一个Web服务客户端。我使用SDK的“ wsimport”工具从WSDL创建Java类,以及将Web服务的唯一方法()包装为简单java方法的类。到目前为止,一切都很好。Web服务正常运行,并正确返回结果。代码如下: 现在的问题:为了填充各种JMX值(例如COUNT_READ_TIMEOUT,COUNT_CONNECT_TIMEOUT等),我需要获取有关连

  • 问题内容: 我在ElastiCache上运行Redis集群。 多个进程连接到Redis集群。每个进程都位于Docker容器中。流程不尽相同-我有一个流程,一个流程等。 正常运行几天后,连接到Redis时,我的某些进程开始超时。当我进入受影响的容器并尝试通过到达群集时,与群集的连接超时。这告诉我,问题不仅影响过程,而且影响整个容器。 当我从任何其他容器中使用时,连接都不会出现问题。 我的进程会根据需

  • 问题内容: 我有一个C ++服务器和两个客户端(红宝石和Java)。一切都在64位linux机器(java 1.7.0_17)上运行。ruby客户端可以正常工作,但是java版本会出现问题。 在Java中,我尝试将字符串从客户端发送到服务器。实际上,服务器收到了整个字符串,但是服务器认为还有更多东西要接收。 红宝石客户端看起来像这样: 这里的一切工作正常。红宝石客户端发送一个字符串。服务器接收该字