【问题标题】:How to close JDBC Connection in jmeter如何在 jmeter 中关闭 JDBC 连接
【发布时间】:2020-02-14 02:52:59
【问题描述】:

我正在使用 JDBC 连接配置和 JDBC 请求采样器从数据库中获取测试数据,以获取大量数据以满足我的测试需求。 我的问题是,如果我们通过连接配置和 JDBC 采样器连接到数据库以从数据库中获取数据,那么我们如何像使用其他性能测试工具 Neoload 一样关闭来自数据库的连接。 到目前为止,我从使用 sp_who2 或以下查询的 sql server 中的活动连接总数中看到的是 jmeter 测试执行完成后 JDBC 连接未关闭。 问题是,如果我的使用目的在脚本执行中完成,如何关闭 JDBC 连接? 任何帮助将不胜感激。

【问题讨论】:

  • 您实际使用的是哪个版本?您不能同时使用三个不同的版本吗?但总的来说:JMeter 创建一个连接池,您可以通过“Soft Min Evictable Idle Time”属性配置未使用的连接应该在多长时间后关闭。详见手册:jmeter.apache.org/usermanual/…
  • 您的问题解决了吗?如果没有,您是否联系过 JMeter?

标签: jmeter jmeter-4.0 jmeter-3.2 jmeter-5.0


【解决方案1】:

如果这是您真正需要的,您可以从任何JSR223 Test Element 调用DataSourceElement.getConnection() 函数,该函数将返回java.sql.Connection 的实例,因此您将能够调用Connection.close() 函数。

类似:

org.apache.jmeter.protocol.jdbc.config.DataSourceElement.getConnection('foo').close()

其中foo 是您的连接池变量名称。

【讨论】:

    【解决方案2】:

    JDBC Connection Configuration 在使用连接池时出现问题

    池中允许的最大连接数。在大多数情况下,将其设置为零 (0)。这意味着每个线程将获得自己的池,其中包含一个连接,即线程之间不共享连接。

    如果你设置了 0 个连接并且问题仍然存在,请为 JMeter 打开一个问题

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-01-24
      • 2012-11-03
      • 1970-01-01
      • 1970-01-01
      • 2015-08-04
      • 2016-09-13
      • 2012-08-28
      相关资源
      最近更新 更多