jmeter 分布式疑难杂症 待完善

jmeter 分布式疑难杂症 待完善

 完善中。。。。(可能不会完善了)

前景:在window调度机上配置好了jmeter相关的 jmx文件,因需搞分布式所以弄了几台linux。

但是jmx文件请求包含有bean shell脚本,需导入jar。还有jmeter也使用了其他插件。所以liunx报了以下错误。

 

一、

Error in NonGUIDriver java.lang.IllegalArgumentException: Problem loading XML from
[root@jmeter01 bin]# jmeter -n -t java.jmx -l log.jtl
Error in NonGUIDriver java.lang.IllegalArgumentException: Problem loading XML from:'/usr/local/jmeter/bin/java.jmx'. 
Cause:
CannotResolveClassException: kg.apc.jmeter.perfmon.PerfMonCollector

 Detail:com.thoughtworks.xstream.converters.ConversionException: 
---- Debugging information ----
cause-exception     : com.thoughtworks.xstream.converters.ConversionException
cause-message       : 
first-jmeter-class  : org.apache.jmeter.save.converters.HashTreeConverter.unmarshal(HashTreeConverter.java:67)
class               : org.apache.jmeter.save.ScriptWrapper
required-type       : org.apache.jorphan.collections.ListedHashTree
converter-type      : org.apache.jmeter.save.ScriptWrapperConverter
path                : /jmeterTestPlan/hashTree/hashTree/hashTree/kg.apc.jmeter.perfmon.PerfMonCollector
line number         : 489
version             : 5.0 r1840935
-------------------------------

 

默默吐槽下网上的分布式教程,别听网上的教程(虽然这也是网上的教程),啥linux运行机的jmeter得从官网下载啊,再打包到linux后再解压,狗屁。

linux执行机的jmeter直接从window调度机拷贝过去就可以了。之后在jmeter目录下运行chmod -R +x * 命令(注意linux文件权限问题,缺啥权限补啥),可解百病(大概有1千种病)。

 

 

 二、master机器没有返回响应数据

原因:jmeter客户端默认是统计模式,不显示响应数据,减少开销。

若是调试阶段,想查看响应数据,打开调度机的bin/jmeter.properties文件,去掉mode=Standard前的#  。当然不建议开这种模式。

 

 

 三、报错信息

[root@jmeter02 bin]# jmeter-server
Using local port: 5555
Created remote object: UnicastServerRef2 [liveRef: [endpoint:[:5555](local),objID:[-789dee5a:167ef09b878:-7fff, 9149640639256216932]]]
Server failed to start: java.rmi.RemoteException: Cannot start. Unable to get local host IP address.; nested exception is: 
    java.net.UnknownHostException: jmeter02: jmeter02: Name or service not known
An error occurred: Cannot start. Unable to get local host IP address.; nested exception is: 
    java.net.UnknownHostException: jmeter02: jmeter02: Name or service not known

在执行机上查找本机hostname,并修改执行机/etc目录下的hosts文件

添加:执行机ip hostname,亲测ip填写127.0.0.1无法成功运行(网上教程也是千奇百怪)

成功效果图

 

 

 

 

 

 

 

 

 

 

 

 

 

https://blog.youkuaiyun.com/qq_32113189/article/details/80680399

 

 成功图如下

 

posted on 2018-12-26 14:01 Zing_Z 阅读(...) 评论(...) 编辑 收藏

JMeter是一个开源的压力测试工具,可以用于Web应用、SOA服务以及其他HTTP协议的应用程序的性能测试。当需要对系统进行大规模并发压力测试时,我们通常会考虑构建分布式JMeter环境。 ### JMeter分布式压测环境搭建步骤: #### 第一步:准备环境 1. **服务器配置**:首先,你需要一组服务器,每台服务器都需要安装Apache JMeter,并且它们之间应该有稳定的网络连接。 2. **JMeter版本一致性**:确保所有JMeter版本一致,避免因版本差异导致的兼容性问题。 #### 第二步:部署JMeter 1. **服务器上安装JMeter**:通过SSH或其他远程访问工具将JMeter安装包上传到服务器上,然后解压并配置JMeter环境变量。可以参考官方文档或教程进行详细操作。 2. **配置JMeter**:在每个JMeter实例中配置监听地址和端口。例如,在命令行中运行 `jmeter -n -t test计划.jmx -l results.jtl` 来启动测试,这里 `-n` 指示无GUI模式运行,`-t` 表示测试脚本的位置,`-l` 表示结果保存文件位置。 #### 第三步:创建并分发测试计划 1. **设计测试计划**:使用JMeter的图形界面或脚本语言编写测试计划,包括URL、请求头、参数、断言等。确保测试计划能覆盖所需的所有功能和场景。 2. **导出测试计划**:将测试计划导出为.jmx格式文件,以便于跨节点执行。 3. **分发测试计划**:将测试计划文件复制到所有参与测试的服务器上。 #### 第四步:协调与控制 1. **负载均衡**:根据实际需求分配任务给各个服务器,可能需要使用额外的工具如LoadRunner或Zabbix等来监控和控制流量分配。 2. **日志分析**:为了更好地理解系统响应以及发现潜在瓶颈,设置详细的日志记录,并定期查看日志信息。 #### 第五步:执行分布式测试 1. **同步执行**:通过脚本或者其他自动化手段触发所有服务器同时开始执行测试计划。 2. **监视与调整**:使用JMeter自带的日志功能或外部监控工具监视测试过程,必要时调整服务器资源分配或测试策略。 #### 第六步:分析结果 1. **聚合报告**:通过JMeter的聚合报告功能合并各服务器的测试结果,生成全面的性能测试报告。 2. **优化调整**:基于测试结果分析系统性能瓶颈,针对性地优化代码或架构设计。 ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值