【问题标题】:Stress testing WebSockets in Jmeter在 Jmeter 中对 WebSocket 进行压力测试
【发布时间】:2023-04-10 23:02:02
【问题描述】:

我正在尝试使用 Jmeter 的插件 (jmeter-websocket) 对我的 WebSocket 服务器进行压力测试。问题是该插件没有文档说明如何使用它,因此我不确定我对它的期望是否得到支持。

我设法使用提到的插件运行了一个示例测试,它已成功连接到服务器。它还设法与服务器进行通信,但是一旦完成接收到第一个响应,它就会断开连接。我希望以某种方式配置此插件,使其与WebSocket 服务器保持几分钟的持久连接,在断开连接之前发送和接收几条消息。

通过压力测试,我想了解并发连接数如何影响我的应用程序的行为。这个插件适合我的需要吗?如果是,那我应该如何使用它?

【问题讨论】:

  • 你知道怎么做吗?我也在尝试让 WebSocket 保持打开状态
  • 不幸的是,没有。正如你所看到的,还没有给出任何回应(老实说,我认为永远不会有回应)。
  • 那是相当不幸的。您最终是否使用了另一个基准测试工具?我需要一个不仅可以使用 WebSockets 还可以发送 JSON 消息
  • 一旦我找到解决这个问题的方法(一种或另一种方式),我会在这里发布,但不幸的是我还没有。我唯一可以添加到您评论的是发送 JSON 消息相当简单(因为它们只是在 POST 中发送的简单文本),所以您唯一关心的应该是对 WebSockets 进行压力测试。

标签: websocket jmeter jmeter-plugins


【解决方案1】:

我遇到了完全相同的问题。您提到的插件仅适用于类似 HTTP 的请求/响应,但我无法将其用于“长”连接。

看看这个http://github.com/maciejzaleski/JMeter

特点:

  • 支持 HTTS/HTTPS (ws/wss) 版本的 WebSocket 协议
  • 忽略 SSL 证书错误的选项
  • 流式传输允许单个连接在测试期间保持打开状态
  • 响应必须匹配预定义的正则表达式
  • 响应超时
  • 响应消息积压(从多个服务器消息构建采样器响应)
  • 如果服务器发送匹配预定义正则表达式的消息,连接可能会关闭

【讨论】:

    【解决方案2】:

    截至 2017 年 11 月,适用于 Apache JMeter 的最佳 Websocket 采样器是这个 3rd 方插件:

    可以通过jmeter-plugins plugin manager轻松安装。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-28
      • 1970-01-01
      • 1970-01-01
      • 2020-09-03
      • 1970-01-01
      • 2021-05-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多