掌握这个方法,测试服务器性能不在话下(下)
摘要:如果集中测试一个Web服务器的性能表现,遇到了一些瓶颈,那么 利用JMeter的分布式测试配置,就可以很轻松的解决。运行测试
1.运行测试(命令行)
执行命令 jmeter.bat -n -t DistributingPOST.jmx-Jserver.rmi.ssl.keystore.file=rmi_keystore.jks -R192.168.1.14,192.168.1.15 (多个IP用逗号隔开)
2.查看结果
以上命令运行了测试计划DistributingPOST.jmx在两个节点服务器上,每个服务器模拟了6个用户(共计6*2=12个用户)。下图更清晰地显示了运行时的命令响应。
3.运行测试并生成报告
执行命令:jmeter.bat -n -t DistributingPOST.jmx-Jserver.rmi.ssl.keystore.file=rmi_keystore.jks -R192.168.1.14,192.168.1.15 -l ResultCollect.csv -e -o ResultHtml
4.查阅报告
生成的报告文件Resultcollect.csv 和文件夹ResultHtml 在主机(Master)JMeter 的/bin 文件夹下。
常见错误
1.不能运行JMeter GUI
解决方案:打开文件 accessibility. properties
sudo vim /etc/java-8-openjdk/accessibility.properties
注释下面一行代码:
#assistive_technologies=org.GNOME.Accessibility.AtkWrapper
附: 安装vim 及常用命令
sudo apt-get install vim
VIM常用命令: https://www.fprintf.net/vimCheatSheet.html
2.不能正常启动节点服务器(loopback address)
解决方案一:打开文件jmeter-server. 启用并修改下面代码:
RMI_HOST_DEF=-Djava.rmi.server.hostname=<当前节点服务器IP>
解决方案二:
执行命令:sh jmeter-server -Djava.rmi.server.hostname=<节点服务器IP> 启动节点服务器。(注意一定要去到jmeter的/bin目录下执行)
3.运行测试(没有响应)
解决方案:检验是否还有多余的网络连接是开启的,确保当前开启的网络可以互相ping通在所用的节点服务器与主机之间。
当前主机网络
VM 网络设置
4.不能建立节点服务器连接(SSH Exception)
解决方案: 确保同一个rmi_keystore.jks文件在主机与节点服务器
5.rmi_keystore.jks 文件不存在
解决方案:确保同一个rmi_keystore.jks在节点服务器
6.节点服务器拒绝 (Connection Refused)
解决方案:确保节点服务器启动并运行成功
总结一下吧,是不是特别方便实用的方法,以后在做性能测试时,再也不用担心服务器拒绝了吧,使用虚拟机或者Cloud也不用申请更多的硬件资源了。最重要的一点就是不用来来回回地单独运行测试计划在多个机器上。执行变得更简单,测试结果变得更统一。
最后希望小伙伴们灵活灵用哦,有什么新的想法可要随时分享哦。
页:
[1]