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主

posted @   袁与张  阅读(82)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示
主题色彩