通过命令参数可以配置Locust运行方式
文档 https://docs.locust.io/en/stable/configuration.html#command-line-options
Locust的运行模式有:
单进程运行
所有的虚拟并发用户均运行在单个Python
进程中
多进程分布式运行
1.单进程
-f LOCUSTFILE, --locustfile LOCUSTFILE 使用对应的测试文件运行locust -u NUM_USERS, --users NUM_USERS 模拟的用户数量 -r SPAWN_RATE, --spawn-rate SPAWN_RATE 每秒启动的虚拟用户数 -H HOST, --host HOST 指定运行需要测试的主机域名
eg:
web页面上
Number of users to simulate 对应 -u , --users
Hatch rate (users spawned/second) 对应 -r , --spawn-rate
HOST 对应 -H , --host
eg:
locust -f locustfile.py --web-host="127.0.0.1" -u 100 -r 20 -H http://127.0.0.1:8015
打开http://127.0.0.1:8089/,对应参数被初始化到了页面上
2.多进程分布式
如果单台计算机不足以模拟所需的用户数量,Locust 支持运行分布在多台计算机上的负载测试
Master 节点
这是将运行Locust的Web界面的实例
master本身不会模拟任何用户
--master 当前节点为 master 节点 --master-bind-host MASTER_BIND_HOST 指定master绑定的host --master-bind-port MASTER_BIND_PORT 指定master绑定的端口
Worker 节点
--worker当前节点为 master 节点 --master-host MASTER_NODE_HOST 指定master节点的host --master-port MASTER_NODE_PORT 指定master节点的端口
eg:
master
locust -f locustfile.py --web-host="127.0.0.1" -u 100 -r 20 -H http://127.0.0.1:80 15 --master --master-bind-host 127.0.0.1 --master-bind-port 8090
使用两次下面语句生成 两个worker节点
locust -f locustfile.py --worker --master-host 127.0.0.1 --master-port 8090