Locust性能测试7-分布式执行

前言

使用Locust进行性能测试时,当一台单机不足以模拟所需的用户数量的时候,可以在多台机器上分布式的执行性能测试。
locust分布式启动场景有2种,一种是单机设置master和slave模式,另外一种是有多个机器,其中一个机器设置master,其它机器设置slave节点。

单机主从模式

Locust 中如需使用 master-slave 模式启动多个进程(使用多核处理器的能力),先启动 master,然后再逐一启动若干个 slave。
其中 slave 的节点数要小于等于本机的处理器数,那么问题来了,如何看自己的电脑是及核的,以win10为例。
打开设备管理器-处理器,数下有几个,比如我下面有四个,那就是四核的

先启动一个master节点,mater节点不执行任务

locust -f locustfile.py —master

开多个窗口,启动多个slave节点,比如我开四个窗口,依次执行以下命令

locust -f locustfile.py —slave

此时在浏览器输入:http://localhost:8089/ slave节点数为4

多机主从模式

当一台机器的并发数无法满足你的业务需求时,可以在多台机器上分布式的执行性能测试。
选择其中一台电脑,启动master节点,因为主节点无法操作别的节点,所以必须在其它机器上启动从属Locust节点,后面跟上—slave参数,以及 —master-host(指定主节点的IP /主机名)。

locust -f locustfile.py —master

接着在其它机器上(环境和主节点环境一致,都需要有locust的运行环境和脚本),启动 slave 节点,设置 —master-host

locust -f locustfile.py —slave —master-host=192.168.x.xx

参数介绍:

  • —master 以主服务模式启动Locust,web界面打开也是以此机IP为地址。

  • —slave 以从属服务模式启动Locust

  • master-host=192.168.x.xx  用于从属服务指定主服务的地址

  • —master-port=8089 用于从属服务指定主服务的端口

无网页模式启动, -c是设置并发用户数,-r是设置每秒进入用户数,-t设置运行时长

locust -f locust_files/my_locust_file.py —no-web -c 100 -r 10

2019第一期《python测试开发》课程,10月13号开学!

本期上课时间:10月13号-12月8号,每周六、周日晚上20:30-22:30

(0)

相关推荐

  • MongoDB是如何扛住我司千万级QPS的?

    MongoDB 是一款功能完善的分布式文档数据库,是一款非常出名的 NoSQL 数据库. 图片来自 Pexels 当前国内使用 MongoDB 的大型实践越来越多,MongoDB 为我司提供了重要的数 ...

  • Redis:从应用到底层,一文帮你搞定

    总感觉哪里不对,但是又说不上来 1.基本类型及底层实现 1.1.String 用途: 适用于简单key-value存储.setnx key value实现分布式锁.计数器(原子性).分布式全局唯一ID ...

  • 阿里云ECS服务器部署HADOOP集群(二):HBase完全分布式集群搭建(使用外置ZooKeeper)

    本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建,多添加了一个 datanode 节点 . 1 节点环境介绍: 1.1 环境介绍: 服务器:三台阿里 ...

  • Locust性能测试1-环境准备与基本使用

    前言 提到性能测试,大部分小伙伴想到的就是LR和jmeter这种工具,小编一直不太喜欢写这种工具类的东西,我的原则是能用代码解决的问题,尽量不去用工具. python里面也有一个性能测试框架Locus ...

  • Locust性能测试2-先登录场景案例

    前言 有很多网站不登录的话,是无法访问到里面的页面的,这就需要先登录了 实现场景:先登录(只登录一次),然后访问页面->我的地盘页->产品页->项目页 官方案例 下面是一个简单的lo ...

  • Locust性能测试3-no-web模式和csv报告保存

    前言 前面是在web页面操作,需要手动的点start启动,结束的时候也需要手工去点stop,没法自定义运行时间,这就不太方便. locust提供了命令行运行的方法,不启动web页面也能运行,这就是no ...

  • locust性能测试4-参数关联

    前言 前面[Locust性能测试2-先登录场景案例]讲了登录的案例,这种是直接传账号和密码就能登录了,有些登录的网站会复杂一点, 需要先从页面上动态获取参数,作为登录接口的请求参数,如[学信网:htt ...

  • Locust性能测试5-参数化之批量注册

    前言 实现场景:所有并发虚拟用户共享同一份测试数据,并且保证虚拟用户使用的数据不重复. 例如,模拟10用户并发注册账号,总共有100个手机号,要求注册账号不重复,注册完毕后结束测试 准备数据 虚拟用户 ...

  • pytest文档22-pytest分布式执行(pytest-xdist)

    前言 平常我们手工测试用例非常多时,比如有1千条用例,假设每个用例执行需要1分钟.如果一个测试人员执行需要1000分钟才能执行完,当项目非常紧急的时候, 我们会用测试人力成本换取时间成本,这个时候多找 ...

  • GaussDB分布式Stream执行计划详解

    GaussDB的分布式架构充分运用了每个节点的计算资源,且随着节点规模的扩大其整体性能也呈线性增长.为了实现分布式架构下性能和资源的最大化利用,GaussDB提供了三种分布式执行计划,分别为FQS(F ...

  • 三招教你解决员工执行力不强的问题

    很多时候,我们都喜欢拖延到最后一刻,才匆忙地去做那些本该早就做完的事情. 优秀的人,能够快速行动,解决问题,而与他们相比,执行力极差却让很多人成了资深的拖延症患者. 所谓执行力,就是能够把计划付诸行动 ...

  • 执行一线 | 深圳知识产权案件执行的三个突围

    近年来,广东省深圳市中级人民法院围绕"实现知识产权最强保护"的目标,结合执行文书和流程的繁简分流改革,不断总结执行经验,提高执行效率.加大执行力度,促进知识产权执行案件整体办理质效 ...