locust mysql_Locust性能测试7-分布式执行

前言

使用Locust进行性能测试时,当一台单机不足以模拟所需的用户数量的时候,可以在多台机器上分布式的执行性能测试。

locust分布式启动场景有2种,一种是单机设置master和slave模式,另外一种是有多个机器,其中一个机器设置master,其它机器设置slave节点。

单机主从模式

Locust 中如需使用 master-slave 模式启动多个进程(使用多核处理器的能力),先启动 master,然后再逐一启动若干个 slave。

其中 slave 的节点数要小于等于本机的处理器数,那么问题来了,如何看自己的电脑是及核的,以win10为例。

打开设备管理器-处理器,数下有几个,比如我下面有四个,那就是四核的

3afa541ba1f1d52a427943facb5feb8b.png

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

locust -f locustfile.py --master

d9b4f490b7fb4b0f602011be402e3ef3.png

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

locust -f locustfile.py --slave

a473ee7422f87047818d3ac78cd296cc.png

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

08c0145e93bdbc95fe109a231e1c7346.png

多机主从模式

当一台机器的并发数无法满足你的业务需求时,可以在多台机器上分布式的执行性能测试。

选择其中一台电脑,启动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

你可能感兴趣的:(locust,mysql)