
正文
linuxjmx命令 linux命令chm
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
jmeter 分布式压测配置Linux
本文只讲jmeter分布式压测怎么在Linux环境下配置:
使用分布式压测linuxjmx命令,是因为单个压测机并发到不到系统要求linuxjmx命令,所以多个压测机同时去压。
一般是由一个主机(master)和几台压力机(slave)组成。
主机 主要是起到启动和收集结果功能(当然也可以参与压测但不建议),测试脚本jmx在这台机器下,执行linuxjmx命令的时候会发送给每台压力机。
压力机 主要接受主机发送的压测脚本,同时进行压测,并把结果回传给主机。
以下是本人的压测环境,可以参考的去配置:
都是在Linux环境下(有些是主机Windows,压力机Linux,都是这样配置)
master主机:10.244.162.8
slave压测机(三台):10.244.162.9,10.244.162.10,10.244.162.11
主机ping一下压测机,是否可以ping通,否则关闭防火墙或者多个网卡(一台机器可能配置多个网卡多个IP,尤其是Windows当做主机)。
jdk,jmeter安装在主机和压力机下,尽量版本统一,jmeter在这几个机器服务都可以启动jmeter -v,如果权限不够到bin/目录下,命令: chmod 777 jmeter jmeter-server jmeter.sh 。(安装比较简单,这里就不多赘述)
保存。
在apache-jmeter-5.1.1/bin下执行./jmeter-server(代表jmeter启动,监听状态,等待主机发送测试脚本和执行命令) ,
有些启动命令:./jmeter-server -Djava.rmi.server.hostname=10.244.162.10(当前机器的ip),linuxjmx命令我觉得都行,没编辑配置文件那一项这样启动。
启动就设置完成。
如果是Windows当主机,重启一下jmeter在运行-远程启动既可以看到压测机。
如果是Linux下主机,需要用到命令:
我是在测试jmx脚本的目录下执行,这样方便收集信息。
sh (jmeter启动) -n -t (jmx脚本) -R (压力机ip,多个中间用英文逗号隔开) -l (test.jtl) -e -o (压测报告结果html文件夹)
sh /app/apache-jmeter-5.2.1/bin/jmeter.sh -n -t test.jmx -R 10.244.162.9,10.244.162.10 -l test.jtl -e -o test
注意:主机只传jmx给压力机,如果压测脚本有引用变量文件,比如csv,txt文件等是不传的,压力机也要有这些变量文件,复制过去存放的目录和上面压力机./jmeter-server启动的目录一致(就是linuxjmx命令你在哪个目录启动的就放在哪个目录下),否则压力机找不到变量文件,执行会报错或者直接结束无测试结果。
相关问答
Q1: 什么是JMX?
所谓JMX,是Java Management Extensions(Java管理扩展)的缩写,是一个为应用程序植入管理功能的框架。用户可以在任何Java应用程序中使用这些代理和服务实现管理。
从图中我们可以看到,JMX的结构一共分为三层:
Mbean分为如下四中
1、根据standard MBean的要求,我们首先要定义一个MBean接口,接口的命名规范以具体的实现类为前缀,为了后续可以注册到MBean Server中
2、定义一个实现类
3、定义agent层
1、 通过工厂类获取Mbean Server,用来做Mbean的容器
2、 ObjectName的取名规范: 域名:name=Mbean名称 , 其中域名和Mbean的名称可以任取。这样定义后,我们可以唯一标示我们定义的这个Mbean的实现类了
3、最后将Hello这个类注册到MbeanServer中,注入需要创建一个ObjectName类, 我们可以用jdk自带的Jconsole用来观察,可以设置属性值和调用相关方法 。
MBean之间的通信是必不可少的,Notification起到了在MBean之间沟通桥梁的作用。JMX 的通知由四部分组成:
1、Notification这个相当于一个信息包,封装了需要传递的信息
2、Notification broadcaster这个相当于一个广播器,把消息广播出。
3、Notification listener 这是一个监听器,用于监听广播出来的通知信息。
4、Notification filiter 这个一个过滤器,过滤掉不需要的通知。这个一般很少使用。保留Hello及HelloMBean,增加如下
这里的类Jack不仅实现了MBean接口,还继承了NotificationBroadcasterSupport。jack在这里创建并发送了一个消息包。
对HelloAgent做以下修改
我们利用jconsole调用jack的hi方法, 这里当jack发出消息后,Notification被广播至所有的MBean,当有MBean属于Hello类时则调用Hello的printHello()方法 。
在linux下利用jmx监控Tomcat,在catlina.sh中进行一些环境变零的配置
Q2: 如何在linux上执行jmeter文件jmx
linux环境还是windows环境? 如果是linux环境linuxjmx命令,到bin目录下:./jmeter.sh XX.jmx(所要运行linuxjmx命令的测试脚本linuxjmx命令,没有的话,examples目录下有个) 如果有进程启动,且jmeter.log中没有错误信息就安装成功linuxjmx命令了linuxjmx命令; 如果是windows环境,双击“jmeter.bat”文件,如...
Q3: kafka - 正确激活JMX的姿势
kafka启动时默认是不启用远程JMX的。根据官方文档需要通过设置JMX_PORT环境变量在启动kafka时激活JMX。
see Apache Kafka Monitoring
正确设置JMX_PORT的姿势(以 19797 端口为例,所有命令在 同一行 ):
以下方式是 不起 作用的(分别设置JMX_PORT和启动kafka),也就是说JMX_PORT的设置不会被传递到子shell中,原因请参看: linux - export not working in my shell script - Stack Overflow ,上面链接里提到的解决方案(使用. or source 来调用kafka-server-start.sh的方法)无法在kafka启动脚本里使用,因为一行kafka脚本 base_dir=\$(dirname $0) 会因为$0值的改变而报错,导致脚本运行失败。
Q4: 如何在linux添加添加jmx端口
个人环境说明linuxjmx命令:JAVA
jdk1.6.0_20
IP地址:192.168.88.106
系统登陆用户名:Administrator
1,设置密码文件和权限
在jdk1.6.0_20\jre\lib\management中将jmxremote.password.template复制一份重命为
jmxremote.password。修改最后两行,将
#monitorRole
QED
#controlRole
RD
前面linuxjmx命令的#号去掉。为什么后面解释。
然后修改jmxremote.password的文件权限为仅当前用户完全控制,所有者为当前用户,具体步骤如下:
Windows系统需要3个步骤:
在jmxremote.password文件上右键-属性,切换到安全选项卡。XP系统可能看不到,请百度
点“高级”按钮,弹出“jmxremote.password的高级安全设置”窗口。
(1)删除所有用户对jmxremote.password文件的访问权限:
在“权限”选项卡中点“更改权限”,将“包括可从该对象的父项继承的权限”
复选框去掉,然后系统会弹出一个“Windows安全”警告,选择“删除”按钮。
删除成功后,权限项目栏会变成:“所有组或用户均不具有访问此对象的权限。但是该对象的所有者可以分配权限。”
(2)指定当前登陆用户对该文件有完全控制权限
点“添加”按钮,再点“高级”按钮,再点“立即查找”,在搜索结果中找当前系统的登陆用户双击添加进来。
注意不要选择那些带S结尾的,那个表示组,只能选择用户。linuxjmx命令我的是Administrator
返回后点确定,然后在弹出框中勾选“完全控制”。点确定返回刚开始的“jmxremote.password的高级安全设置”窗口。
(3)将所有者设置为当前系统的登陆用户
切换到所有者选项卡,点击“编辑”,双击选择当前系统的登陆用户,注意不要选择那些带S结尾的,那个表示组,只能选择用户。
最后一路确定。权限修改完毕。
Linux系统:
chmod
600 jmxremote.password
这个没试过,官方这么写的。
2,启动JMX服务端
下面这行命令我是在JDK的根目录执行的,
这里指定的端口号是10089,主机名称即当前计算机IP地址,不推荐设置成localhsot或者127.0.0.1,会导致在别的机子上连不上来。JAR包指定的是JDK自带的一个DEMO
java
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.port=10089
-Djava.rmi.server.hostname=192.168.88.106 -jar
demo/jfc/Java2D/Java2Demo.jar
3,启动JConsole
在JDK的bin目录执行jconsole.exe
关于linuxjmx命令和linux命令chm的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。








