当前位置: 首页 > news >正文

网站建设域名空间跨境电商公众号

网站建设域名空间,跨境电商公众号,免费的网站开发软件,如何在网站上做咨询浮动窗口为什么需要分布式? 在工作中经常需要对一些关键接口做高QPS的压测,JMeter是由Java 语言开发,没创建一个线程(虚拟用户),JVM默认会为每个线程分配1M的堆栈内存空间。受限于单台试压机的配置很难实现太高的并…

为什么需要分布式?

在工作中经常需要对一些关键接口做高QPS的压测,JMeter是由Java 语言开发,没创建一个线程(虚拟用户),JVM默认会为每个线程分配1M的堆栈内存空间。受限于单台试压机的配置很难实现太高的并发。所以,通过JMeter实现分布式,可以整合多台主机的硬件资源,实现同时对被测试接口进行压力测试。

Jmeter分布式测试环境中有两个角色:Master 和 Slaves

  • Master节点:向参与的Slaves节点发送测试脚本,并聚合Agent节点的执行结果。

  • Slaves节点:接收并执行Master节点发送过来的测试脚本,并将执行结果返回给Master。

为什么要使用docker?

如果要分布式联动每台主机,就要求每台主机都要有JMeter环境(JDK + JMeter),如果利用docker就可以通过docker管理 JMeter环境,简单的拉取镜像,启动容器即可。进一步讲,利用k8s、云服务可以无限的扩容JMeter试压机,理论上多少的并发用户都可以模拟。

准备工作

  • JDK:启动 JMeter 工具需要
$ brew install openjdk@11
  • JMeter: 编写JMeter脚本
    Index of /dist/jmeter/binaries

编写一个简单的脚本。

  • docker: 通过doker创建容器。
$ docker pull runcare/jmeter-master
$ docker pull runcare/jmeter-slave
  • 查看docker镜像
$ docker imagesREPOSITORY              TAG        IMAGE ID       CREATED         SIZE
runcare/jmeter-master   latest     e052a8cd8680   3 years ago     326MB
runcare/jmeter-slave    latest     05c7ba96d97d   3 years ago     326MB

请记住 jmeter-master 的镜像ID e052a8cd8680,后面会用到。

分布式压测使用

  • 启动 slave 节点。
    假设有两台主机,可以启动两个slave。
$ docker run -it -d --name slave01 runcare/jmeter-slave
$ docker run -it -d --name slave02 runcare/jmeter-slave
  • 查看启动的容器
$ docker psCONTAINER ID   IMAGE                  COMMAND                   CREATED             STATUS             PORTS                 NAMES
b270636a7741   runcare/jmeter-slave   "/bin/sh -c 'jmeter-…"   43 seconds ago      Up 42 seconds      1099/tcp, 60001/tcp   slave01
2584c7fef5f8   runcare/jmeter-slave   "/bin/sh -c 'jmeter-…"   52 seconds ago      Up 50 seconds      1099/tcp, 60001/tcp   slave02
  • 发送压测脚本到 slave
$ result=`date +"%Y%m%d%H%M%S"` && docker run --rm -v /Users/fnngj/zhpro/script:/data e052a8cd8680 jmeter -n -t /data/baidu_script.jmx -l /data/$result.jtl -j /data/$result.log -e -o /data/$result -R 172.17.0.2,172.17.0.3

参数说明

result=date +"%Y%m%d%H%M%S"`: 指定测试结果的名称,以当前日期时间命名。

/Users/fnngj/zhpro/script : 压测脚本的目录,测试结果也会存放到该目录下。

baidu_script.jmx : 压测脚本的名称,存放于 /Users/fnngj/zhpro/script目录下。

e052a8cd8680 : jmeter-master 的镜像ID。

172.17.0.2,172.17.0.3 : 两台 slave 的IP 地址。

测试结果

  • 执行完的目录
$ pwd
/Users/fnngj/zhpro/script$ ls
20230707005328     20230707005328.jtl 20230707005328.log baidu_script.jmx
  • 查看报告

进入20230707005328 目录,点击 index.html 文件,可以看到压测的结果。

最后

如果你想学习自动化测试,那么下面这套视频应该会帮到你很多

Python接口自动化测试零基础入门到精通(2023最新版)

http://www.yayakq.cn/news/576594/

相关文章:

  • 西安网站制作开发公司哪家好建网站的要求
  • 百度联盟做网站赚钱企业网站 dede phpcms 帝国
  • p2p种子网站建设兰州网站建设公司价格
  • 网页设计与网站建设选择题做定制旅游最好的网站
  • 北京网站建设一般多少钱北京自助建站软件
  • 做一个二手网站怎么做网站 加域名
  • 佛山网站建设 乐云践新专家wordpress 页面模板不显示
  • 青岛网站建设eoewordpress redirect_to
  • 手机网站开发合同范本网站概述怎么写
  • 温州网站建设公司电话外贸网站响应式
  • sasaki景观设计公司官网广州网站优化推广
  • 网站建设佰金手指科杰六无线ap组网方案
  • 官方网站制作公司怎样制作微信网站链接
  • 移动端购物网站建设一般家庭装修照片
  • 那个网站做直播好着力加强网站内容建设
  • 株洲网站建设服务delphi WordPress
  • 成都建设网站分享中文小程序开发工具
  • 永和建设集团有限公司网站东莞网页设计公司排名
  • h5网站开发 源码安卓手机性能优化软件
  • 网站建公司简介智能产品创新设计
  • 汇赢网站建设具备网站维护与建设能力
  • 云南建设厅网站网站视频插件代码
  • 怎样给网站增加栏目worldpress英文网站建设
  • 高校网站建设滞后新手学网站建设解疑与技巧1200例
  • icp备案网站用不了网站可信查验
  • 合肥网站设计服智能优化大师下载
  • 湖州做网站公司哪家好零基础自己做网站
  • 中职网站建设网店运营以后可以做什么
  • 手机怎样建立网站专业建站公司的业务内容
  • 做网站需要多少台服务器营销案例分析