Performance 通过分布式jmeter实例和竹子进行性能测试

Performance 通过分布式jmeter实例和竹子进行性能测试,performance,testing,maven,jmeter,bamboo,Performance,Testing,Maven,Jmeter,Bamboo,我正在为亚马逊网络上运行的几个服务进行性能测试 我们的架构是: 在我们的设施中运行的持续集成服务器(竹子) 与要测试的服务在同一网络中的Jmeter服务器实例 在我们的设施中,连接到Jmeter服务器(ssh隧道)的Jmeter客户端 我想从Bambol开始执行测试,并在上面看到不同的结果 Bamboo with <---------> Jmeter server <--------> WebService Jmeter client

我正在为亚马逊网络上运行的几个服务进行性能测试

我们的架构是:

  • 在我们的设施中运行的持续集成服务器(竹子)
  • 与要测试的服务在同一网络中的Jmeter服务器实例
  • 在我们的设施中,连接到Jmeter服务器(ssh隧道)的Jmeter客户端
我想从Bambol开始执行测试,并在上面看到不同的结果

Bamboo with    <--------->   Jmeter server <-------->  WebService
Jmeter client                  on Amazon                on Amazon
使用Jmeter服务器WebService的竹 亚马逊上的亚马逊Jmeter客户端
有人尝试过类似的方法吗?

通常,将JMeter客户端和服务器保持在同一子网中而不使用隧道会更好、更容易。更好,因为在传输结果数据时不会引入延迟问题,更容易,因为隧道RMI并不有趣

我可以想象,最简单的解决方案是让Bambor执行一个shell脚本,然后使用该脚本控制启动测试和管理结果。如果安装了JMeter的ec2主机,则可以使用ssh执行测试。类似于(为简洁起见简化):

不久前,我对一个需求采取了类似的方法,后来它发展成了一个新的需求。可能对你的需求来说太多了,但是如果有什么用的话,可以随意把它拆开

就在竹子上看到结果而言,这将是一个定制过程。JMeter将为每个单独的测试提供一个csv或xml文件,您可以使用它的GUI读取和可视化该文件,但对于CI,您将受益于一个解决方案,该解决方案可以在多个测试运行(即多个代码构建)中对结果进行趋势分析。为此,您需要将结果放入某种形式的存储(可能是数据库)中,然后查询它们以获得最有用的表示形式

如果你只对简单的平均值感兴趣,那么这其实很容易。测试完成后,只需使用shell脚本awk数据,以获取一些摘要值,并将它们导入表中。或者,这可能更容易,看看竹API提供了什么。您可能会发现,您可以直接导入每个构建的结果,然后使用竹形工具查看结果。这完全取决于您需要的报告级别

ssh -i /mykey.pem root@myec2host.com ./path/to/jmeter -n -t /path/to/mytest.jmx -l /my/results.jtl