JMeter - 使用服务器计时可视化响应时间 API

JMeter - Visualize response time using Server Timing API

我正在使用 jmeter 进行一些负载测试。我对这两个指标都感兴趣:

像往常一样,我的请求执行以下操作:访问服务器,进行一些计算,查询数据库,进行更多计算,然后 return 响应。我对测量解决查询并在 JMeter 上可视化它所花费的时间很感兴趣。

为此,我使用了服务器计时响应 API,也就是说,我在我的响应中设置了一个 header 来注释那个时间。像这样:

Server-Timing: miss, db;dur=53, app;dur=47.2

有关详细信息,请查看 official documentation。现在,我的问题是,如果 JMeter 甚至可以做到这一点,我也不会这样做。我认为也许在 JSR223 侦听器上我可以做到这一点,但我不确定。知道如何获取这些值并以某种方式表示它们吗?

  1. 您可以使用合适的 Post-Processor 提取它,例如 Regular Expression Extractor 配置如下:

    它将从响应中提取值 53 并将其存储到 dbdur JMeter Variable

  2. 下一步是将此 dbdur 声明为 Sample Variable,这可以通过将下一行添加到 user.properties 来完成 文件:

    sample_variables=dbdur
    

    更多信息:Apache JMeter Properties Customization Guide

  3. 最后,您可以在 HTML 报告仪表板中将变量值绘制为自定义图表,就像在 Generating customs graphs over time 章节中描述的那样,只需更改示例 ts-hit将变量值采样到您的 dbdur 并相应地修改 axis/chart 标题。