如何在使用docker的分布式测试中运行jmeter时在运行时设置JVM堆大小

时间:2017-08-18 08:05:23

标签: jmeter

我有以下测试基础设施:

  1. 3个实例(主人+2个奴隶),dockerized
  2. 从jmeter master运行命令(默认512m用于所有3台机器)sudo docker exec -i master /bin/bash -c "/jmeter/apache-jmeter-3.1/bin/jmeter -n -t /home/librarian_journey_Req.jmx -Djava.rmi.server.hostname=yy.yy.yy.yy -Dclient.rmi.localport=60000 -R1xx.xx.xx.xx -j jmeter.log -l result.csv"
  3. 以上命令工作正常并获得结果。但是想在运行时将堆大小增加到3gb。

    我曾尝试使用以下命令:

    sudo docker exec -i master /bin/bash -c "JVM_ARGS="-Xms1024m -Xmx1024m" /jmeter/apache-jmeter-3.1/bin/jmeter -n -t /home/librarian_journey_Req.jmx -Djava.rmi.server.hostname=10.135.104.138 -Dclient.rmi.localport=60000 -R10.135.104.135,10.135.104.139 -j jmeter.log -l result.csv"
    

    运行上述命令后没有任何反应。请指导如何增加。

2 个答案:

答案 0 :(得分:2)

您可以在运行容器时覆盖环境变量。此外,通常您不需要使用let imagePicker = UIImagePickerController() //in did load imagePicker.delegate = self // MARK: - UIImagePickerControllerDelegate Methods func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) { if let image = info[UIImagePickerControllerOriginalImage] as? UIImage { imgview.image = image } else{ print("Something went wrong") } dismiss(animated: true, completion: nil) } 来执行docker。所以试试这个:

sudo

答案 1 :(得分:0)

感谢大家的所有帮助和指导。能够通过在docker jmeter基本图像上设置ENV变量来为主机和从机设置堆大小,如下所示。感谢@vins。 ENV JVM_ARGS -Xms3G -Xmx3G