zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    [经验] 如何在虚拟机上安装 CentOS
    [经验] Java 使用 netty 框架, 向 Unity 客户端的 C# 实现通信[2]
    [经验] Java 使用 netty 框架, 向 Unity 客户端的 C# 实现通信 [1]
    [经验] 关于 Java 中的非空判断
    [经验] Java Web 项目怎么部署到 Linux 系统上
    求和
    引用与指针
    C++学习前言
    大O
    ubuntu连接不上mysql问题
  • 原文地址:https://www.cnblogs.com/yoyoketang/p/11681370.html
Copyright © 2011-2022 走看看