• jmeter分布式测试


    场景:单台测试机做压力测试,不能满足服务器的上限,本机就已经到达瓶颈了。所以需要多台机器同时压测服务器

    1. 环境

    Java 10 + 2台win10 + jmeter5.0

    一台 win 作为调度机和负载机,另外一台单独作为负载机

    2. 安装

    2.1 两台都安装 Java 环境

    注意jmeter4.0开始就要求至少 java8,当然这里的 jmeter5.0也是要求 java8及以上

    (略)

    2.2 安装 jmeter

    先到 jmeter 官网下载软件包 https://jmeter.apache.org/download_jmeter.cgijmeter5.0下载链接

    下载到本地后,解压如下图

    主要使用到的目录就是 bin 目录, 下面包含了所有的启动脚本。

    2.3 接下来需要配置一个环境变量(远程主机也需要这一步)

    win10:右键【此电脑】-> 【属性】-> 左边栏【高级系统设置】-> 上边栏【高级】-> 【环境变量】 -> 下方【系统变量】 -> 【新建】

    注意:这里的变量值需要换成自己的目录

    win7:右键计算机,其他步骤大致同 win10

     

    上面的步骤做完后,进入到 apache-jmeter-5.0/bin 目录下,找到 jmeter.bat 运行

    脚本运行完后,会出现图形化界面

    到这里就算是安装成功了

    3. 配置分布式环境

    3.1 配置

    在两台主机上操作:

    找到 apache-jmeter-5.0in 目录下的 jmeter.properties 文件。通过文本方式打开后,找到 server_port 和 server.rmi.localport 两项,去掉注释修改为 

    server_port=1099
    server.rmi.localport=1099
     
    找到 server.rmi.ssl.disable 项,去掉注释修改为
    server.rmi.ssl.disable=true
     
    解释:这两个端口默认就是 1099,防止可能出现端口绑定出错的情况,直接显式指定了。后面的 server.rmi.ssl.disable 是指定不使用加密通信
    这里需要注意的是,1099 也可以换成其他端口,注意防火墙需要放行
     
    在在主机(调度机)上配置:
    同样是在 jmeter.properties 文件,找到 remote_hosts 字段,增加远程主机的地址
    在本文中,本机也作为调度机,所以添加两个地址,分别为两台主机的地址,端口为上面配置的端口
    remote_hosts=192.168.56.1:1099,192.168.56.2:1099

    3.2 启动

    启动远程主机:在 apache-jmeter-5.0in 目录下,启动 jmeter-server.bat 

    这里的 192.168.56.1:1099 表示远程节点的监听绑定地址,检查是否正确

    注意:如果此处的地址不正确,请停止其他虚拟网卡。建议禁用所有虚拟网卡

    启动本机:
    本地需要启动两个脚本。一个是作为压力测试机的 jmeter-server.bat (同上),一个是 jmeter.bat 脚本(用来管理所有的远程节点)

    3.3 测试

    创建一个简单的访问测试
    step 1:添加一个线程组

    step 2:在线程组下添加 http 请求

    step 3:编辑 http 请求,填写下面参数。

    ps: 请求的地址为气象局网站 http://www.cma.gov.cn,因为这个网站支持 http 让演示简单

    step 4:添加查看结果报告

    step 5:启动远程测试,选择远程主机

    检查结果:请求成功。如果选择远程启动所有的话,这里会出现两条结果

    3.4 安装插件

    如果需要看更多的东西,比如 rps,tps 等结果,jmeter 原生是不支持的。需要安装插件,此处以 tps 插件为例

    插件网站 https://jmeter-plugins.org/wiki/Start/,找到 tps 插件

    点击下载

    跳转到插件页面:

    下载地址 2.0

    下载后是一个 lib 包,直接拷贝到 jmeter 目录下即可。然后重新打开 jmeter.bat,就能看见插件

    其他插件按照需要执行上述安装步骤即可

    4. 测试用例编写

    下面简单介绍常用的组件含义

    线程组中用来添加请求的并发数,和请求次数

    断言中用来判断请求结果

    简单的测试可以如下图,将常用的变量放在用户自定义变量中,使用的格式为 ${变量名},聚合报告可以查看所有请求的结果,及相关信息

  • 相关阅读:
    利用libxml2解析xml文档
    找出两个链表的第一个公共结点
    [转载]风雨20年:我所积累的20条编程经验
    inotify监测文件及文件夹
    [转载]linux下svn常用指令
    利用zlib进行数据压缩
    2013腾讯编程马拉松初赛:郑厂长系列故事——体检
    Socket编程之简单介绍
    C语言中static的作用总结
    写程序实现wireshark的抓包功能
  • 原文地址:https://www.cnblogs.com/newguy/p/9860355.html
Copyright © 2020-2023  润新知