【问题标题】:Always getting error “Non HTTP response code: java.net.UnknownHostException”总是收到错误“非 HTTP 响应代码:java.net.UnknownHostException”
【发布时间】:2016-07-15 09:08:05
【问题描述】:

我尝试使用 JMeter 软件进行压力测试,以测试一个网站,因为它在短信活动后崩溃。目前网站已移至物理服务器。

我通过添加线程进行了多次测试,它可以工作并且几乎没有错误(对于 1000 个以上的线程),并且可以为 400 个线程工作而没有错误。所以我尝试用 4 台 PC 进行分布式测试,包括我的一台。

在我再次尝试仅使用我的 PC 通过添加 400 个线程(加速 = 1,循环 = 1)向站点发送请求之后。但是每个请求都会出错。然后我尝试使用 1 个线程。给出了同样的错误。

我检查了我的网络连接,没有问题。然后我浏览了网站“http://www.myjobs.lk/”,它运行良好。

这些是我在测试中给出的值。

在这种情况下,我无法执行测试,因为它总是会出错。我该如何克服这个问题?

【问题讨论】:

  • 我不知道为什么会在您的情况下发生错误,但在我的情况下,每次我的互联网连接无法正常工作时都会发生此错误。确保您的互联网应该可以正常工作。
  • 互联网连接正常,可以访问网站,没问题
  • @TharinduKandegedara 您能否检查并显示您在HttpRequestHttpRequestDefaults 屏幕中用于Server Name or IPPath 字段的值
  • 您可以尝试将采样器实现切换到 Java 或 HTTPClient4 或查看Click me
  • 你不需要发布四张截图来描述UnknownHostExceptuon。让我解释。这意味着您尝试连接的主机名未知。到 DNS。这是不对的。修复它,或者修复你的 DNS。

标签: java multithreading jmeter stress-testing


【解决方案1】:

看起来JMeter 尝试连接到myjobs.lk,而您浏览到www.myjobs.lk。尝试更改以使 JMeter 也连接到 www.myjobs.lk

【讨论】:

  • 我试过@gustf,但之后又出现了另一个错误。我找不到问题。我在我的问题中提到了它。
  • 我认为您现在将其更改为包含“http://”,这不是服务器名称或 IP(查看@Dmitri 的答案)。我更新了没有“http://”的答案,以尽量减少混淆。
【解决方案2】:

你使用了不正确的JMeter配置,修改如下:

  1. 从“服务器名称或 IP”输入中删除 http://
  2. http 放入“协议输入”

    也可以在“路径”字段中包含完整的 URL,例如

    但是在“服务器名称或 IP”中使用“http://”是行不通的。

此外,一旦您在 HTTP 请求默认值中定义了主机名、端口、路径等,它将自动应用于所有 HTTP Request Samplers。您将能够覆盖特定此或那个采样器的选项,但如果您不这样做 - 将使用默认值。有关更详细的说明和一些用例,请参阅Why It's SO Important To Use JMeter's HTTP Request Defaults

【讨论】:

  • 我认为这是 IllegalArgumentException 的解决方案,原因是在我的答案中在服务器名称或 IP 中输入“http://”,而不是原始问题的 UnknownHostException?还是我错了?
【解决方案3】:

对我来说,设置代理服务器很有帮助:

【讨论】:

    猜你喜欢
    • 2014-10-29
    • 2022-01-27
    • 2015-08-25
    • 1970-01-01
    • 2014-12-10
    • 2020-11-12
    • 2021-09-13
    • 2017-12-06
    相关资源
    最近更新 更多