Locust2.8.5非WebUI执行与分布式负载执行

一、命令行方式执行Locust

locust -f my_locust_file.py --host=http://10.2.2.84:8087 --headless -u 1000 -r 100 -t 1h30m20s --stop-timeout 99

解释:

-f  后为要执行的python文件,

-u  指定要生成的用户数,

--host  为接口ip,

-r  指定每秒启动的用户数,

-t  为运行时间。在测试运行时,可以手动更改用户计数,即使在加速完成后也是如此。按w添加1个用户或按W添加10,按s删除1个或按S删除10。 

--stop-timeout 默认情况下,locust 会立即停止你的任务(甚至不等待请求完成)。如果你想让你的任务完成他们的迭代可以使用该参数,单位为秒。

二、WebUI模式下负载开启步骤

        多进程运行负载:一个python进程本身并不能充分利用一个以上的内核,可以在多核机器上启动多个进程的方式来达到负载的目的。一个master,多个worker,master只负责数据收集,worker执行负载。WebUI执行时会把输入的user数量等分到worker进程中去执行。

#master进程开启执行
locust -f my_locustfile.py --master

#worker进程开启执行
locust -f my_locustfile.py --worker 

         分布式负载执行:即是在多个机器上执行负载。

负载执行前期确认:

1. 主机和负载机之间可以相互ping通。

2. 主机和负载机都存在对应的运行脚本。

1. 先要在master模式下启动Locust,执行如下命令,--master声明主机。

locust -f my_locustfile.py --master

2. 再依次在负载机下执行如下命令,--worker声明为负载机,--master-hosr等于master主机ip。

locust -f my_locustfile.py --worker --master-host=10.2.2.88

3. 在主机浏览器中输入主机ip➕8089端口号,通过webUI界面手动开启任务即可。

注意:主机本身不发生负载,建议负载机数量不要超过主机内核线程数,主机启动的用户数量应尽量大于负载机数量。如果是使用非WebUI模式运行分布式负载,要在执行master命令后加上--expect-workers参数指定worker数目,当启动的worker进程数达到指定数据时就会开始执行负载测试。

locust -f my_locust_file.py --headless -u 1000 -r 100 -t 1h30m20s --expect-workers 3

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值