【问题标题】:Is it possible to use JMeter to make multiple HTTP/2 requests in one connection (multiplexing)?是否可以使用 JMeter 在一个连接中发出多个 HTTP/2 请求(多路复用)?
【发布时间】:2018-09-01 18:43:18
【问题描述】:

我正在尝试使用 JMeter 对 Web 应用程序运行 RESTful API 性能测试。在实际情况下,一个网站会在一个连接中使用多路复用在 HTTP/2 下对 Web 应用程序进行 4-5 次异步 API 调用。我已经在 J​​Meter 中安装了 HTTP2Sampler 插件,但我不知道如何在一个 TCP/IP 连接中进行这些调用。

【问题讨论】:

  • 您需要将您的请求放在一个线程组中。现在没有时间写更多,但是您可以使用该搜索词找到详细信息:“JMeter 线程组”。
  • 同一个线程组下的线程会使用同一个 TCP/IP 连接发出请求吗?
  • 哦,好问题。我误解了你的问题:我不知道答案。

标签: java jmeter jmeter-plugins http2 multiplexing


【解决方案1】:

没有内置的 JMeter 采样器可以开箱即用地提供此功能。但是,您可以选择以下选项之一:

  1. 使用别人开发的 HTTP/2 采样器。快速搜索带来了一对:thisthis。我从来没有用过,所以不能说它们是否稳定,当然只有你才能知道它们是否符合你的所有需求。

  2. 开发自定义JMeter Java Sampler。如果上述两种采样器都不能使用,并且您不想花太多时间学习有关 JMeter API 的所有细节来开发自己的自定义插件,这是一个不错的选择。

  3. 开发您自己的 HTTP/2 插件。此选项比选项 2 更昂贵,但如果您愿意投资购买具有多种功能的灵活采样器,那么这是一个可行的方法。最好的起点是查看现有采样器的源代码,例如我在 1. 中提到的那些,或通过jmeter-plugins.org 获得的任何其他采样器

  4. 然后最快的选择是在BeanShell sampler 中编写代码。缺点当然是此类代码的可维护性,以及性能、错误处理等方面的潜在问题。但对于操作流程相当简单的一次性测试来说,这是一个不错的选择。

【讨论】:

    猜你喜欢
    • 2013-06-16
    • 2019-10-18
    • 1970-01-01
    • 1970-01-01
    • 2016-09-16
    • 2020-04-18
    • 1970-01-01
    • 1970-01-01
    • 2010-10-03
    相关资源
    最近更新 更多