Locust 使用(续更新)

本文以Centos 7为例

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

1、部署Python环境

Python3.6.5 下载

上传至操作系统,并解压

1371745-20220225112836645-465646129.png1371745-20220225112836645-465646129.png

安装一些依赖包:

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

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

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

至此,Python环境安装完成。
2、安装Locust
在目录下创建一个目录workspace

[[email protected] local]# pwd
/usr/local
[[email protected] local]# mkdir workspace

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

[[email protected] local]# cd workspace/
[[email protected] workspace]# python3 -m venv ceshi

进入虚拟环境ceshi:

[[email protected] bin]# pwd
/usr/local/workspace/ceshi/bin
[[email protected] bin]# source activate
(ceshi) [[email protected] bin]# 

安装locust

(ceshi) [[email protected] 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
[[email protected] ceshi]# pwd
/usr/local/workspace/ceshi
[[email protected] 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
[[email protected] ceshi]# 

查看locust是否安装完成:

1371745-20220225112836645-465646129.png1371745-20220225112836645-465646129.png

运行:

(ceshi) [[email protected] ceshi]# pwd
/usr/local/workspace/ceshi
(ceshi) [[email protected] 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) [[email protected] ceshi]# locust -f discuz_index.py

1371745-20220225112836645-465646129.png1371745-20220225112836645-465646129.png

添加新评论

icon_mrgreen.gificon_neutral.gificon_twisted.gificon_arrow.gificon_eek.gificon_smile.gificon_confused.gificon_cool.gificon_evil.gificon_biggrin.gificon_idea.gificon_redface.gificon_razz.gificon_rolleyes.gificon_wink.gificon_cry.gificon_surprised.gificon_lol.gificon_mad.gificon_sad.gificon_exclaim.gificon_question.gif