甲方爸爸要求,用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机的更多相关文章

  1. 虚拟机virtualBox安装linux系统 xshell远程连接linux

    虚拟机virtualBox安装linux系统 xshell远程连接linux 虚拟机概念: 通过软件, 使用虚拟化技术虚拟出电脑的硬件环境, 充当真实的电脑使用. 常见的虚拟软件: virtualBo ...

  2. Linux 安装Mono环境 运行ASP.NET(一)

    1.先看一下Linux环境下面请求的过程,(画的不是很好,简单的了解一下原理.) .NET跨平台其实需要这三个关键:编译器.CLR和基础类库.在.NET下我们编写一个最简单的"Hello W ...

  3. GitBlit (1)-- 在linux 安装 GitBlit 并运行

    Git是一款注重速度.数据完整性.分布式支持和非线性工作流的分布式版本控制工具.Git最初由Linus Torvalds在2005年为Linux内核开发而设计,如今已经成为被广泛接受的版本控制系统. ...

  4. Linux 安装Mono环境 运行ASP.NET(二)

    一.安装libgdiplus     前面我们已经安装了apr.apr_util.pcre和httpd apache .现在我们来安装libgdiplus Libgdiplus是一个Mono库,用于对 ...

  5. MongoDB Linux 安装配置 后台运行

    介绍安装的文档很多,可以参考这篇: http://www.mkyong.com/mongodb/how-to-install-mongodb-on-mac-os-x/ 安装完后你可能会碰到的2个问题. ...

  6. Linux安装配置go运行环境

    1. 下载go,解压 gz包 wget https://storage.googleapis.com/golang/go1.7.5.linux-amd64.tar.gz tar zxvf go1.7. ...

  7. Linux安装jsvc,及Linux服务开发

    在linux上以服务的方式启动java程序,需要提前安装jsvc.linux是利用daemon(jsvc)构建java守护进程. 编译 daemon 安装JSVC 1 下载文件,http://comm ...

  8. Linux 安装 go 以及 arm linux 移植 go

    背景 Go是一门全新的静态类型开发语言,具有自动垃圾回收,丰富的内置类型,函数多返回值,错误处理,匿名函数,并发编程,反射等特性. 从Go1.4之后Go语言的编译器完全由Go语言编写,所以为了从源代码 ...

  9. Ubuntu linux安装完成后隐藏linux磁盘挂载点

    方案1 打开注册表 , 找到这个位置: 计算机\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explore ...

随机推荐

  1. Spring AOP潜入易懂的讲解

    为什么会有面向切面编程(AOP),我们知道Java是一个面向对象(OOP)的语言,但它有一些弊端,比如当我们需要为多个不具有继承关系的对象引入一个公共行为,例如日志,权限验证,事务等功能时,只能在每个 ...

  2. 软工-js learning

    使用教程JavaScript Standards Reference Guide-阮一峰 9.6-9.15学习进程: 1.导论 概述 JavaScript的历史 2.语法 基本语法 数据类型 数值 字 ...

  3. git send-email时报错:Client host rejected: cannot find your hostname 如何处理?

    1. 先找出ip对应的域名 dig +short -x <your ip> 2. 如果第1步没有输出,那么需要将hostname与ip绑定,如:hostname为jello,那么是往/et ...

  4. MySQL:行锁、表锁、乐观锁、悲观锁、读锁、写锁

    1.锁的分类 1.1从对数据操作的类型来分 读锁(共享锁):针对同一份数据,多个读操作可以同时进行而不会互相影响. 结论1: --如果某一个会话 对A表加了read锁,则 该会话 可以对A表进行读操作 ...

  5. 【Taro全实践】6位验证码输入视觉分离(标准下划线分离)

    一.实现的效果图 二.实现思路 中间想过很多实现方法,但是因为input为原生组件的原因,很难适配所有手机直接. 所有如何实现适配所有手机的验证码分离输入呢?(思路如下) 1.input组件为原生组件 ...

  6. 【Taro全实践】修改radio组件的大小

    需求是将radio选中后颜色改为橙色.大小改成合适大小. 1.改颜色 <Radio color='#FF7464'></Radio> 2.改大小 <Radio style ...

  7. js五彩小球

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. coursera 视频总是缓冲或者无法观看的解决办法(Windows 和 Linux 系统 环境)

    现在读了一个机器学习方向的博士,虽然这么长时间也没有学明白什么,但是没事的时候也会看看一些书籍和资料,学这个方向的人基本都会看过吴恩达的coursera课程上的机器学习课程,我也是如此,不过交了钱以后 ...

  9. 8and9 pod控制器

    Pod控制器: 自主定义的pod资源删除后不会被重启,被Pod控制器管理的pod资源被删除后会重启. pod控制器的种类: ReplicationController: (最早使用,现在已经被废弃,太 ...

  10. python之scrapy携带Cookies模拟登陆

    知识点 """ scrapy两种模拟登陆: 1.直接携带cookie 2.找到发送post请求的url地址,带上信息,发送请求 应用场景: 1.cookie过期时间很长, ...