如何在jmeter中的隧道上配置PostgreSQL数据库

时间:2019-01-25 19:55:50

标签: postgresql jmeter rds ssh-tunnel

我正在使用jmeter测试使用PostgreSQL的应用程序。我可以使用数据库应用程序提供的ssh隧道连接到数据库。 有人可以告诉我如何使用jmeter进行此操作。我在jmeter数据库连接confi元素中看不到任何ssh隧道选项。

2 个答案:

答案 0 :(得分:0)

您可以使用端口转发,如此答案中所述:

答案 1 :(得分:0)

  1. 我不认为您应该直接对数据库进行负载测试your load test should simulate real-life application under test usage。因此,与其测试数据库,不如将重点放在应用程序本身上,并像对待black box一样对待它,因此我的一般建议是重新考虑该方法。

  2. 如果您已经执行了正常的负载测试,并且确定数据库为bottleneck,并且希望单独进行数据库负载测试-performance testing it over the SSH tunnel is not the best idea itself,因为下一个SSH隧道流量由于TCP协议的性质以及通过SSH发送/加密数据所需的大量CPU占用空间,瓶颈成为了瓶颈。因此,我建议与网络管理员交谈,并请他们暂时打开您正在运行JMeter的计算机的Postgres网络端口,或者为您提供访问可以安装JMeter的计算机的访问权限。

  3. 直接(最好是在相同的subnet /物理位置,否则为might be suffering from high latencies)访问数据库
  4. 如果以上说明由于某种原因不适用于您-您可以使用SSH Local Forwarding来将远程Postgres端口映射到您的本地端口,相关命令将是:

    ssh -L 2345:localhost:5432 username@your_postgresql_server
    

    完成后,您应该可以连接到Postgres实例,因为它是本地安装在端口2345上的,例如:

    postgres://localhost:2345/your_database