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 ...
随机推荐
- LG2216 理想的正方形
题意 有一个\(a \times b\)的整数组成的矩阵,现请你从中找出一个\(n \times n\)的正方形区域,使得该区域所有数中的最大值和最小值的差最小 思路 对于每一列,都用两个单调队列维护 ...
- 【模板】强连通分量和tarjan算法
看了好久才终于明白了这个算法..复杂度是O(n+m). 我觉得这个算法不是很好理解,但是看懂了以后还是觉得听巧妙的. 下面给出模板代码和三组简单数据帮助理解. 代码如下: #include <s ...
- Java通过过滤器修改header
特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...
- iOS中web app调试(mac)
原文 iOS中web app调试(mac).md 目录 一.真机联调配置 二.mac上Safari配置及真机联调 三.iOS模拟器使用 四.在iOS模拟器中安装app 近期公司vue项目开发,目的是一 ...
- 【软件工程】Beta冲刺(5/5)
链接部分 队名:女生都队 组长博客: 博客链接 作业博客:博客链接 小组内容 恩泽(组长) 过去两天完成了哪些任务 描述 将数据分析以可视化形式展示出来 新增数据分析展示等功能API 服务器后端部署, ...
- R语言:实现SQL的join功能的函数
library(dplyr) ribao <- full_join(ribao,result,by = '渠道',copy = T) ribao <- full_join(ribao,se ...
- linux内核中的subsys_initcall是干什么的?
注意:使用的内核源码版本为5.1.3 1. subsys_initcall长什么样子? 它其实是个宏定义,定义如下: #define subsys_initcall(fn) __define_ ...
- JVM菜鸟进阶高手之路一[z]
https://mp.weixin.qq.com/s/qD1LFmsOiqZHD8iZX97OfA? 问题现象 代码如下,使用 ParNew + Serial Old 回收器组合与使用 ParNew ...
- AOP获取方法注解实现动态切换数据源
AOP获取方法注解实现动态切换数据源(以下方式尚未经过测试,仅提供思路) ------ 自定义一个用于切换数据源的注解: package com.xxx.annotation; import org. ...
- JPA,Hibernate,Spring Data JPA之间的关系
什么么是JPA? 全称Java Persistence API(JAVA对象持久化API),可以通过注解或者XML描述[对象-关系表]之间的映射关系,并将实体对象持久化到数据库中. 为我们提供了: 1 ...