前言
在我們性能測試過程中巩那,我們常常需要分別設定幾組配置對應用模塊進行性能測試吏夯,以作對比。這樣的目的在于探究應用運行的瓶頸即横。其中噪生,我們測試的時候可以通過修改容器分配的內存空間進行測試。
內存修改步驟
1.刪除docker中的容器
docker rm [CONTAINER ID]
2.通過docker run
利用image
進行啟動容器(構建容器并啟動)
docker run
參數可以通過 runlike
命令查看docker運行參數runlike new-payment
docker run --net=host -d -e JAVA_OPTS="-Xms256m -Xmx512m -javaagent:/data/share/agent/skywalking-agent.jar -Dskywalking_config=/data/share/agent/config/agent.config" -e JAVA_JAR_OPTS="-Djeesuite.configcenter.profile=test98" -e MachineHostName=all-service-192-168-1-98.test98.ayg --cap-add=SYS_PTRACE -v /dockerlogs/balance-web:/logs -v /data/docker_uploaddata/balance-web:/data/upload/ --volumes-from ayg_fileshare --restart=unless-stopped --add-host config.iyuangong.net:192.168.1.98 --name balance-web --hostname="balance-web-all-service-192-168-1-98.test98.ayg" 192.168.1.196:5000/balance-web:latest
修改內存的參數在JAVA_OPTS="-Xms256m -Xmx512m东囚,對于其他的應用將根據其他的應用來決定
3.構建成功后通過docker logs
查看docker構建情況
docker logs -f [CONTAINER ID]
至此修改內容操作已完成
4.確認修改內存是否成功可通過一下方式查看
進入容器杠园,用export
命令查看環(huán)境變量
docker exec -it [CONTAINER ID] bash
jvisualvm-監(jiān)聽docker
監(jiān)聽docker容器中的jvm需要配置的參數
方法:
1.runlike new-payment
查看應用的運行參數
2.修改應用運行參數
加入監(jiān)聽參數
-Djava.rmi.server.hostname=ip
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.rmi.port=11199
-Dcom.sun.management.jmxremote.port=1199
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
加入端口映射(根據需求自定義映射端口)
- -p指定要映射的端口,一個指定端口上只可以綁定一個容器
- -P將容器內部開放的網絡端口隨機映射到宿主機的一個端口上
hostport:containerport #指定宿主機port、指定容器port
-p 11199:11199 -p 10086:10086
參考內容:性能測試 - 性能監(jiān)控之我見