Jmeter之Linux安装(Xshell),分布式运行Linux作为slave机
甲方爸爸要求,用Linux压测...... 所以在公司服务器Linux上搭建Jmeter
但实际一个Jmeter程序也有程序瓶颈~
所以在Jmeter瓶颈下,搭建分布式压测系统。(也许可以尝试在一台机器上安装多个Jmeter....这个我倒是没尝试)
拓扑图如下:分布式测试系统在同一个局域网内

1.安装Xshell,依据提供的ip,用户,密码登录服务器
xshell连接linux,参考网址:https://www.cnblogs.com/bf-blackfish/p/11156140.html
2.测试服务器是否安装JDK
输入命令:java -version (公司服务器都有部署系统,JDK当然就有咯~)
JDK安装:https://baijiahao.baidu.com/s?id=1625872524161069279&wfr=spider&for=pc

3.安装Jmeter
(1)创建文件夹Jmeter(管理测试相关工具和脚本)

命令:mkdir Jmeter //创建文件夹
命令:ll //查看详情
命令:cd Jmeter //进入Jmeter文件夹目录下
(2)安装上传下载工具包rz及sz

命令:yum install -y lrzsz //这个工具可以实现windows与linux互传文件
从Windows上传文件,上传命令为rz; 从Linux下载文件指令为sz; 上传的文件在当前命令行的目录下;
(3)rz 上传apache-jmeter-4.0.zip
先将本机中的apache-jmeter-4.0压缩(使用自己已经配置好的jmeter,上传解压后就能直接使用)


命令:cd Jmeter //进入自己创建的文件夹目录下
命令:rz //上传压缩包
命令:ll //查看目录详情
(4)解压apache-jmeter-4.0.zip
命令:unzip apache-jmeter-4.0.zip //解压zip
命令:ll //查看目录详情
进入apache-jmeter-4.0/bin目录下

(5)启动jmeter
命令:./jmeter.sh //启动jmeter
无权限启动!!!
命令:chmod jmeter.sh //赋予这个启动项权限,但是也不能直接启动,哎
所以还是需要,=。=|||配置jmeter环境
使用命令启动,无GUI模式(jmx脚本最好删除所有的监听器,命令启动本来就没有视图,且能避免资源占用)
命令:pwd //查看当前目录,进入apache-jmeter-4.0后,输入这个命令能获得当前目录 /root/Jmeter/apache-jmeter-4.0
//服务器vim也没有
命令:yum -y install vim* //安装vim
命令:vim /etc/profile //将下面代码复制到Profile这个文件中,vim的操作就不细说了~ 注意已存在的环境变量,把jmeter的复制过去
export JMETER_HOME=/root/Jmeter/apache-jmeter-4.0
export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$JMETER_HOME/lib/logkit-2.0.jar:$CLASSPATH
export PATH=$JMETER_HOME/bin/:$PATH
然后启动配置文件(只要修改了,就需要再次启动):source /etc/profile
java -version(查看Java信息)
jmeter --version(查看jmeter信息)

出现了上面这个问题的原因是JDK版本太低,换个1.8的就OK了

命令:jmeter -n -t test.jmx -l log.jtl //无GUI运行当前目录下的test.jmx,并将结果保存到log.jtl中

4.分布式运行Jmeter
可以参考这2篇博文:
https://www.cnblogs.com/bf-blackfish/p/11078411.html
https://www.sunjs.com/article/detail/30f73b27fdc24c2eaf6ccddc0b48d3c9.html
把本机作为master,服务器作为slave。
这样就可以在本机看到图形化的结果,并且监听CPU和内存了
遇到的问题:ConnectException:Connection refused to host ......
我配置的是1099端口,让研发配置&开启下这个端口。
然后在master机上:telnet 1:1:1:1 1099 通了就可以用了
(遇到这种拒接连接的问题,先ping ip再telnet ip:port)

Jmeter之Linux安装(Xshell),分布式运行Linux作为slave机的更多相关文章
- 虚拟机virtualBox安装linux系统 xshell远程连接linux
虚拟机virtualBox安装linux系统 xshell远程连接linux 虚拟机概念: 通过软件, 使用虚拟化技术虚拟出电脑的硬件环境, 充当真实的电脑使用. 常见的虚拟软件: virtualBo ...
- Linux 安装Mono环境 运行ASP.NET(一)
1.先看一下Linux环境下面请求的过程,(画的不是很好,简单的了解一下原理.) .NET跨平台其实需要这三个关键:编译器.CLR和基础类库.在.NET下我们编写一个最简单的"Hello W ...
- GitBlit (1)-- 在linux 安装 GitBlit 并运行
Git是一款注重速度.数据完整性.分布式支持和非线性工作流的分布式版本控制工具.Git最初由Linus Torvalds在2005年为Linux内核开发而设计,如今已经成为被广泛接受的版本控制系统. ...
- Linux 安装Mono环境 运行ASP.NET(二)
一.安装libgdiplus 前面我们已经安装了apr.apr_util.pcre和httpd apache .现在我们来安装libgdiplus Libgdiplus是一个Mono库,用于对 ...
- MongoDB Linux 安装配置 后台运行
介绍安装的文档很多,可以参考这篇: http://www.mkyong.com/mongodb/how-to-install-mongodb-on-mac-os-x/ 安装完后你可能会碰到的2个问题. ...
- Linux安装配置go运行环境
1. 下载go,解压 gz包 wget https://storage.googleapis.com/golang/go1.7.5.linux-amd64.tar.gz tar zxvf go1.7. ...
- Linux安装jsvc,及Linux服务开发
在linux上以服务的方式启动java程序,需要提前安装jsvc.linux是利用daemon(jsvc)构建java守护进程. 编译 daemon 安装JSVC 1 下载文件,http://comm ...
- Linux 安装 go 以及 arm linux 移植 go
背景 Go是一门全新的静态类型开发语言,具有自动垃圾回收,丰富的内置类型,函数多返回值,错误处理,匿名函数,并发编程,反射等特性. 从Go1.4之后Go语言的编译器完全由Go语言编写,所以为了从源代码 ...
- Ubuntu linux安装完成后隐藏linux磁盘挂载点
方案1 打开注册表 , 找到这个位置: 计算机\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explore ...
随机推荐
- 面试题:this指针的指向,以及call、apply应用
var a = 2; function test(){ var a = 4; console.log(this.a); this.a = 1; } test();//2 //这里为什么是2?因为调用t ...
- 解决spring-boot 各版本包冲突兼容的方法
思路 在微服务盛行的当下,spring boot 流行程度已经家喻户晓.但同时,随着spring boot 快速迭代,出现了很多版本,比如当前已经推出了2.2.x-SNAPSHOT/ , ...
- Devops(一):CentOS7 安装Maven3.6.1详解
https://yq.aliyun.com/topic/78?spm=5176.8290451.656547.7.rMYhAF https://yq.aliyun.com/activity/155?u ...
- MySQL主从双向同步
最近部署测试环境,涉及到MySQL数据库主从双向同步的部署,记录一下部署过程,正常读写都发生在主库,从库作为备选数据库(热备份),当主库发生异常,数据库自动切换到从库,这里面是怎么监控数据库异常并触发 ...
- php如何开启gd2扩展
extension=php_gd2.dll 找到php的配置文件php.ini,搜索extension=php_gd2.dll,去掉前面的分号即可:如果没有直接添加这种情况适合于windows系统和编 ...
- linux简单命令9--yum安装软件
+
- Can't initialize physical volume "/dev/sdb" of volume group "cinder-volumes" without -ff /dev/sdb: physical volume not initialized.
原因:无法初始化物理量,之前创建的cinder-volumes没有卸载 方法一: [root@storage cinder]# lsblk NAME MAJ:MIN RM SIZE RO TYPE M ...
- 一个简单的C共享库的创建及Python调用此库的方法
/********************************************************************* * Author : Samson * Date ...
- Java NIO学习笔记九 NIO与IO对比
Java NIO与IO Java nio 和io 到底有什么区别,以及什么时候使用nio和io,本文做一个比较. Java NIO和IO之间的主要区别 下表总结了Java NIO和IO之间的主要区别, ...
- SpringMVC中实现Bean Validation(JSR 303 JSR 349 JSR 380)
JSR 303是针对bean数据校验提出的一个规范.使用注解方式实现数据校验. 每个注解的用法这里就不多介绍,请移步JSR 303 - Bean Validation 介绍及最佳实践 笔者上面提到的J ...