Jmeter压力测试+数据库索引命令+OpenSSH镜像下载+docker命令+服务器Jmeter压力测试流程+教你如何将Jmeter导出为.jmx测试计划文件

一、编写测试计划

第1步:打开jemeter

首先打开jmeter的bin目录,点击jmeter.bat文件运行:

第2步:添加线程组

右键测试计划,选择添加-线程-线程组(下面提供2种演示图,对应中/英):

注意jmeter的图形界面是用来编辑图形测试计划的,跑测试是用命令行去跑。

Number of Threads线程数:指定的是并发线程有几个。

Ramp-up period预热时间:代表所有线程在多少时间内启动完成(如果想在一开始让所有线程工作写成0即可)。

Loop Count循环次数:每个线程循环执行几次(如果勾选Infinite,代表永远,线程就会持续地向后端发起请求)。

 

举例:线程数400个,预热时间10秒(1秒是1000毫秒,10秒是10000毫秒),所以是每隔25毫秒会启动一个线程。

第3步:添加Http请求

HTTP Request定义的是需要被测试服务器的URL,访问的页面,请求头等:

发送GET请求:

发送POST请求:

点击添加,然后编辑POST请求传入参数的名称:

通过 工具-函数助手对话框,可以调用不同函数作为变量的传入值。下面以Random函数为例:

可以设置范围内的最小值和最大值,点击生成,函数的字符串就自动被复制入剪贴板,粘贴到变量的参数值位置:

第4步:添加监听器展示结果

注意最后要将Jmeter的图形测试计划导出为.jmx文件。

.jmx文件是JMeter测试计划的一种文件格式。在JMeter中,所有的测试计划都被保存为.jmx文件。这种文件包含了测试计划的所有元素,包括线程组、控制器、取样器、断言、监听器等等,它们都以XML格式储存在.jmx文件中。

步骤:

1.在jmeter中创建或修改完测试计划,选择文件,保存为测试计划:

2.选择要保存.jmx文件的位置,点击确定即可:

 

二、Jmeter压力测试的步骤

实验策略:首先要把.jmx文件放到目录下面,怎么放置采用scp来进行文件的传输,通过连接服务器的ip来将本地的测试脚本传输到远程的服务器上。

vim WriteProduct.jmx 进入写数据库测试脚本,然后更改其中的线程数。

输入jmeter -n -t WriteOrder.jmx -l W8000-10.jtl来进行jmeter文件的编译。(jmeter -n -t ReadProduct.jmx -l R2000-10.jtl 是读数据库测试脚本的编译)

-n 表示非GUI模式运行,通常在服务器或命令行环境中使用。-t 指定要运行的JMeter测试脚本的路径,这里是WriteProduct.jmx。-t 指定要运行的JMeter测试脚本的路径,这里是WriteProduct.jmx。-l表示日志文件,即测试结果写入的目标文件,这里是W2000-10.jtl。

由此会得到一个W2000-10.jtl的文件。

然后输入以下的命令输出日志文件:

rm -r result/*

jmeter -g W7000-10.jtl -o result/ (读 jmeter -g R2000-10.jtl -o result/

-g 表示要生成报告的日志文件,这里是W2000-10.jtl。-o 表示生成报告的输出目录,这里是result/。JMeter将在这个目录下生成一个HTML格式的性能测试报告。

在自己的本地机器上创建一个文件夹,记住其中的路径,比如:

在C/Users/a/Downloads下mkdir W1000-100

cp -r root@120.46.39.186:/root/result/* W1000-10

这是一个使用scp命令复制文件的命令。scp是secure copy的缩写,用于在本地主机和远程主机之间复制文件。-r 表示递归复制,可以复制目录及其子目录下的所有文件。

root@120.46.39.186:/root/result/* 指的是远程主机的文件或目录,格式是用户名@主机地址:文件路径。这里表示远程主机的IP地址是120.46.39.186,用户名是root,要复制的文件在/root/result/目录下。W1000-10 表示要将文件复制到本地主机的目标目录。这里表示复制到当前目录下的W1000-10目录。如果目标目录不存在,scp将创建它。

然后具体查看Response time ,然后要查看Active Threads over time。

三、数据库索引常用命令

1. 创建索引(普通添加)

语法:create index 索引名 on 表名(字段名)

示例:create index index_origin_price on goods_product(Original_price);

含义:在goods_product表的Original_price字段上创建一个名为index_origin_price的索引。

2. 删除索引

语法:alter table 表名 drop index 索引名

示例:alter table goods_product drop index index_name;

含义:删除goods_product表上的名为index_name的索引。

3. 展示索引

语法:show index from 表名;

示例:show index from goods_product;

含义:显示goods_product表中的所有索引。

4. 注意事项

1. 原数据库3912条数据,每次清空新写入数据:delete from goods_product where id>5461;

2. select * from goods_product;

四、OpenSSH镜像的下载

阿里云开源镜像安装包下载

cd C:\Program Files\OpenSSH

netsh advfirewall firewall add rule name=sshd dir=in action=allow protocol=TCP localport=22

net start sshd

scp C:\Users\Dell\Desktop\WriteProduct.jmx root@121.37.156.112:/home/root/

五、其它常用命令

1. 进入容器

语法:docker exec -it 容器id /bin/bash

docker exec这是Docker的一个命令,用于在正在运行的容器中执行命令。-it这是docker exec命令的两个选项,-i代表interactive保持STDIN开启即使没有附加。-t代表tty分配一个伪终端。这两个选项一起使用可以让你有一个交互式的shell。/bin/bash在Docker容器中运行的命令,运行bash是一种常用的Unix shell,可以在Docker容器的内部环境中得到一个bash shell,从而可以执行更多的命令。

示例:docker exec -it b349119f893f /bin/bash

2.进入数据库

语法:mysql -uroot -p

3.进入容器同时进入数据库

语法:docker exec -it 容器id mysql -uroot -p

4.查看docker容器列表

docker ps

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值