• Locust 使用(续更新)


    本文以Centos 7为例

    先对准系统时间:ntpdate ntp.aliyun.com

    1、部署Python环境

    Python3.6.5 下载

    上传至操作系统,并解压

      安装一些依赖包:

    yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel
    yum -y install zlib*

    切到解压目录进行编译安装到/usr/local/python36下:

    mkdir /usr/local/python36 -p
    ./configure --prefix=/usr/local/python36 --with-ssl
    make
    make install

     安装完成之后,执行环境变量:

    [root@locust bin]# export PATH=/usr/local/python36/bin/:$PATH
    [root@locust bin]# python3 -V
    Python 3.6.5
    [root@locust bin]# pip3 -V
    pip 9.0.3 from /usr/local/python36/lib/python3.6/site-packages (python 3.6)

    至此,Python环境安装完成。

    2、安装Locust

    在目录下创建一个目录workspace

    [root@locust local]# pwd
    /usr/local
    [root@locust local]# mkdir workspace

    进入目录,创建虚拟空间:

    [root@locust local]# cd workspace/
    [root@locust workspace]# python3 -m venv ceshi

    进入虚拟环境ceshi:

    [root@locust bin]# pwd
    /usr/local/workspace/ceshi/bin
    [root@locust bin]# source activate
    (ceshi) [root@locust bin]# 

    安装locust

    (ceshi) [root@locust bin]# pip install locust

    安装完成后,新建一个discuz_index.py脚本,如下:

    from locust import HttpUser, TaskSet, task


    class UserBehavior(TaskSet):

        @task(1)
        def baidu(self):
            self.client.get("/ip")


    class Discuz_Locust(HttpUser):
        tasks = [UserBehavior] #
        host = "http://httpbin.org" //目标主机服务
        min_wait = 1000
        max_wait = 2000
    [root@locust ceshi]# pwd
    /usr/local/workspace/ceshi
    [root@locust ceshi]# ll
    total 8
    drwxr-xr-x. 2 root root 204 May 25 15:32 bin
    -rw-r--r--. 1 root root 303 May 25 15:33 discuz_index.py   //赋予执行权限 chmod +x discuz_index.py
    drwxr-xr-x. 3 root root  18 May 25 15:32 include
    drwxr-xr-x. 3 root root  23 May 25 15:24 lib
    lrwxrwxrwx. 1 root root   3 May 25 15:24 lib64 -> lib
    -rw-r--r--. 1 root root  84 May 25 15:24 pyvenv.cfg
    [root@locust ceshi]# 

    查看locust是否安装完成:

     运行:

    (ceshi) [root@locust ceshi]# pwd
    /usr/local/workspace/ceshi
    (ceshi) [root@locust ceshi]# ll
    total 12
    drwxr-xr-x. 2 root root 218 May 25 15:42 bin
    -rwxrwxrwx. 1 root root 303 May 25 15:33 discuz_index.py
    drwxr-xr-x. 3 root root  18 May 25 15:32 include
    drwxr-xr-x. 3 root root  23 May 25 15:24 lib
    lrwxrwxrwx. 1 root root   3 May 25 15:24 lib64 -> lib
    -rw-r--r--. 1 root root  61 May 25 15:38 pip-selfcheck.json
    -rw-r--r--. 1 root root  84 May 25 15:24 pyvenv.cfg
    (ceshi) [root@locust ceshi]# locust -f discuz_index.py

    参考:https://www.cnblogs.com/Ray-2019/p/14306948.html  视频教程:永恒之树99 up主

  • 相关阅读:
    SQL-LINQ-Lambda 语法对照
    C#.NET面向对象(语法点)
    4.5 基于STM32+MC20远程短信控制开关
    4.4 使用STM32控制MC20进行GPS帧数据解析
    4.3 使用STM32控制MC20进行GPRS通讯
    4.2 使用STM32控制MC20发送短信
    4.1 使用STM32控制MC20拨打电话
    3.6.使用STC89C52控制MC20解析GPS的经纬度数据上传到指定服务器
    3.5.基于STC89C52+MC20的短信远程控制开关LCD1602显示
    3.4 使用STC89C52控制MC20解析GPS的经纬度数据在LCD1602上显示
  • 原文地址:https://www.cnblogs.com/ytyzhn/p/16309508.html
Copyright © 2020-2023  润新知