美文网首页
Locust 命令启动参数解读

Locust 命令启动参数解读

作者: ugvibib | 来源:发表于2017-12-24 17:14 被阅读379次

    Locust是一个分布式用户负载测试工具。
    安装、使用 这里不做介绍。
    在此简单解读下用Locust做负载测试时的启动命令。
    并没有全部介绍,只介绍一些常用的.

    -h: 查看帮助
    
    -H: 被测服务器的域名。
        如果想启动的时候,不加“-H”参数,那么在启动脚本里面的就要加上 host="http://sample",写在HttpLocust子类里面。
        脚本里面写 get或post请求 的时候,url只写路径例如 “/login”。
    
    --web-host:locust服务的web界面,用于配置 并发量 与 启动量。在web界面可以实时查看压测结果。
                (如果是分布式,用于master,不用于slave)(理解的可能不对)
    
    --master: 做分布式压测时,标记哪台用做主机。
               主机只用来做统计,并不用来施压。施压的任务留给slave分机做。如果想主机也做来施压,就要在主机上也启动一个slave。
    
    --slave:做分布式压测时,标记哪些用做分机。分机的主要任务是进行施压。
    
    -f:脚本路径。可以写相对路径或是绝对路径。如果是脚本当前目录下,就写相对路径。如果不是,就写绝地路径。
    
    --master-host: 做分布式压测时,指定主机的IP。只用于slave。如果没有指定,默认是本机“127.0.0.1”。
    
    --master-port: 做分布式压测时,指定主机的port。只用于slave。如果没有指定且主机没有修改的话,默认是5557。
    
    --master-bind-host: 做分布式压测时,指定分机IP。只用于master。如果没有指定,默认是所有可用的IP(即所有标记主机IP的slave)
    
    --master-bind-port:做分布式压测时,指定分机port。默认是5557与5558。
    
    --no-web:不带web界面。使用这个参数时,必须指定 -c、-r。
    
    -c: 用户数。
    -r: 每秒启动用户数。
    -t: 运行时长。在t秒后停止。
    -L:打印的日志级别,默认INFO。
    
    --logfile:同-f
    -V:查看Locust版本。
    --host:同-H
    
    PS: 如果参数是以“--”开头,则以=连接实参。例如“--host=http://sample”。如果不是,则以空格连接实参。例如“-H http://sample”
    
    以下是常用的组合:
    
    单机压测:
    locust -f filepath  # 脚本指定host
    locust -f filepath -H http://sample  # 脚本未指定host
    
    分布压测假定脚本指定host:
    master: 
    locust -f filepath --master
    slave:
    locust -f filepath --slave --master-host=192.168.2.221  
    
    一般来说,上面几行命令够用了。
    
    命令行查看
    (venv) E:\Workspace\pressure_test>Locust -h
    Usage: locust [options] [LocustClass [LocustClass2 ... ]]
    
    Options:
      
      -h, --help            show this help message and exit
      
      -H HOST, --host=HOST  Host to load test in the following format:
                            http://10.21.32.33
      --web-host=WEB_HOST   Host to bind the web interface to. Defaults to '' (all
                            interfaces)
      -P PORT, --port=PORT, --web-port=PORT
                            Port on which to run web host
      -f LOCUSTFILE, --locustfile=LOCUSTFILE
                            Python module file to import, e.g. '../other.py'.
                            Default: locustfile
      --csv=CSVFILEBASE, --csv-base-name=CSVFILEBASE
                            Store current request stats to files in CSV format.
      --master              Set locust to run in distributed mode with this
                            process as master
      --slave               Set locust to run in distributed mode with this
                            process as slave
      --master-host=MASTER_HOST
                            Host or IP address of locust master for distributed
                            load testing. Only used when running with --slave.
                            Defaults to 127.0.0.1.
      --master-port=MASTER_PORT
                            The port to connect to that is used by the locust
                            master for distributed load testing. Only used when
                            running with --slave. Defaults to 5557. Note that
                            slaves will also connect to the master node on this
                            port + 1.
      --master-bind-host=MASTER_BIND_HOST
                            Interfaces (hostname, ip) that locust master should
                            bind to. Only used when running with --master.
                            Defaults to * (all available interfaces).
      --master-bind-port=MASTER_BIND_PORT
                            Port that locust master should bind to. Only used when
                            running with --master. Defaults to 5557. Note that
                            Locust will also use this port + 1, so by default the
                            master node will bind to 5557 and 5558.
      --expect-slaves=EXPECT_SLAVES
                            How many slaves master should expect to connect before
                            starting the test (only when --no-web used).
      --no-web              Disable the web interface, and instead start running
                            the test immediately. Requires -c and -r to be
                            specified.
      -c NUM_CLIENTS, --clients=NUM_CLIENTS
                            Number of concurrent Locust users. Only used together
                            with --no-web
      -r HATCH_RATE, --hatch-rate=HATCH_RATE
                            The rate per second in which clients are spawned. Only
                            used together with --no-web
      -t RUN_TIME, --run-time=RUN_TIME
                            Stop after the specified amount of time, e.g. (300s,
                            20m, 3h, 1h30m, etc.). Only used together with --no-
                            web
      -L LOGLEVEL, --loglevel=LOGLEVEL
                            Choose between DEBUG/INFO/WARNING/ERROR/CRITICAL.
                            Default is INFO.
      --logfile=LOGFILE     Path to log file. If not set, log will go to
                            stdout/stderr
      --print-stats         Print stats in the console
      --only-summary        Only print the summary stats
      --no-reset-stats      Do not reset statistics once hatching has been
                            completed
      -l, --list            Show list of possible locust classes and exit
      --show-task-ratio     print table of the locust classes' task execution
                            ratio
      --show-task-ratio-json
                            print json data of the locust classes' task execution
                            ratio
      -V, --version         show program's version number and exit
    
    (venv) E:\Workspace\pressure_test>
    
    
    

    相关文章

      网友评论

          本文标题:Locust 命令启动参数解读

          本文链接:https://www.haomeiwen.com/subject/ktshgxtx.html