通過命令參數可以配置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