locust压测工具环境搭建(Linux、Mac)
目录
使用anaconda搭建locust环境
1、anaconda安装python环境(推荐)
2、从conda安装locust
使用python虚拟环境搭建locust环境
1、直接安装python环境
2、从python环境安装locust
从依赖文件中安装locust环境
1、从anaconda安装locust
2、从python虚拟环境locust环境
常用命令
后台运行locust命令
命令解析
使用anaconda搭建locust环境
python官网:Welcome to Python.org
locust官网:Locust - A modern load testing framework
anaconda官网:Anaconda | The Operating System for AI
1、anaconda安装python环境(推荐)
使用conda安装python环境,有诸多优势 1、不同环境底层SSL库相互隔离,python环境也相互隔离 2、可以快速在一个环境内,切换不同python版本 3、创建/删除环境速度快
tips:如果需要在公司使用anaconda,需要使用公司商业版授权码激活
1、Linux安装anaconda(在线安装)
从官网下载安装包
更多版本可以参考官网文档:Anaconda官网
我这里下载是最新版2023.08
wget https://repo.anaconda.com/archive/Anaconda3-2023.07-2-Linux-x86_64.sh
默认安装路径/root/anaconda3,如果需要指定路径加,-p 安装路径
正常安装一直回车确认,然后一路回车就行
bash Anaconda3-2023.07-2-Linux-x86_64.sh |
然后重新登陆shell
查看版本号,正确返回版本号,说明conda安装成功
conda -V |
2、从conda安装python环境
推荐安装python3.7以上版本,例如安装python3..11版本
使用conda安装的环境,都是虚拟环境,每个环境对应包的都是独立的
# 使用conda创建一个名称为locust的环境,并且下载python3.11包 conda create -n locust python=3.11 # 查看创建环境是否成功 conda env list |
2、从conda安装locust
# 从conda激活lcoust环境 conda activate locust # 使用pip下载locust包 pip3 install locust # 或者可以使用conda下载locust包,先设置conda-forge源,官方源只有locust1.x版本的 conda config --append channels conda-forge conda install locust # 查看包是否下载成功,返回版本号说明下载成功 locust -V |
使用python虚拟环境搭建locust环境
直接在本地环境安装python环境,需要注意几点
1、如果多人同时使用一台压力机,尽量不改变原来环境变量,加python路径时,先加PATH路径,再加自己安装的python路径,用小版本号区分
2、使用python环境时,请使用虚拟环境,切勿使用本地真实环境
1、直接安装python环境
1、下载源文件
wget https://www.python.org/ftp/python/3.11.2/Python-3.11.2.tar.xz
解压源文件
tar -xvf Python-3.11.2.tar.xz
2、下载依赖包
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel=
3、编译安装
./configure --prefix=/usr/local/python3.11
make && make install
4、安装完成后,查看python版本
python3.11 -verison
5、配置环境变量
编辑/etc/profile文件,在末尾加上
export PATH=$PATH:/usr/local/python3.11/bin
刷新环境变量
source /etc/profile
2、从python环境安装locust
虚拟环境安装locust
# 在当前路径创建名称为locust的虚拟环境 python -m venv locust # 激活创建的虚拟环境 source locust/bin/activate # 使用pip安装locust pip3 install locust # 查看包是否下载成功,返回版本号说明下载成功 locust -V |
从本地真实环境安装locust
# 使用pip安装locustpip3 install locust#验证locust版本号locust -V |
从依赖文件中安装locust环境
1、先解压压缩文件,进入文件目录
2、找到conda或者pip依赖文件
3、使用命令安装依赖环境
1、从anaconda安装locust
# conda从yml文件安装依赖环境 conda env create -f locust_environment.yml# 激活环境 conda activate locust |
2、从python虚拟环境locust环境
# 创建虚拟环境 python -m venv locust # 安装依赖包 pip install -r requirements.txt # 激活环境 source locust/bin/activate |
常用命令
后台运行locust命令
nohup locust -f locustfile.py --host www.baidu.com --headless -u 10 -r 5 --tag test --csv=report/test --logfile=log.log &
命令解析
命令行 | 环境 | 配置文件 | 描述 |
|
|
| 要导入的 Python 模块,例如“../other_test.py”。一个 .py 文件、多个逗号分隔的 .py 文件或一个包目录。默认为“locustfile”。 |
|
|
| 主机加载测试格式如下: http: //10.21.32.33 |
|
|
| Locust 并发用户的峰值数量。主要与-headless 或-autostart 一起使用。可以在测试期间通过键盘输入 w、W(生成 1、10 个用户)和 s、S(停止 1、10 个用户)进行更改 |
|
|
| 产生用户的速率(每秒用户数)。主要与--headless或--autostart一起使用 |
|
|
| 在指定时间后停止,例如(300s、20m、3h、1h30m 等)。仅与 –headless 或 –autostart 一起使用。默认永远运行。 |
|
|
| 将 Web 界面绑定到的主机。默认为“*”(所有接口) |
|
|
| 运行 Web 主机的端口 |
|
|
| 禁用Web界面,并立即开始测试。使用 -u 和 -t 控制用户数和运行时间 |
|
|
| 立即开始测试(如 –headless,但不禁用 Web UI) |
|
|
| 运行完成 X 秒后完全退出 Locust。仅与-autostart 一起使用。默认情况下,Locust 会保持运行状态,直到您使用 CTRL+C 将其关闭为止 |
|
|
| 打开 Web 界面的基本身份验证。应按以下格式提供:用户名:密码 |
|
|
| 用于通过 HTTPS 提供服务的 TLS 证书的可选路径 |
|
|
| 用于通过 HTTPS 提供服务的 TLS 私钥的可选路径 |
|
|
| 启用 Web 界面中的选择框以从所有可用的用户类和形状类中进行选择 |
|
|
| 设置locust以分布式模式运行,并以此进程为主 |
|
|
| Locust Master 应绑定到的接口(主机名、IP)。仅在与 –master 一起运行时使用。默认为 *(所有可用接口)。 |
|
|
| Locust Master 应该绑定到的端口。仅在与 –master 一起运行时使用。默认为 5557。 |
|
|
| 在开始测试之前,master 应该期望连接多少个工人(仅当使用 –headless/autostart 时)。 |
|
|
| master应该等待worker连接多久才放弃。默认永远等待 |
|
|
| 设置 Locust 以分布式模式运行,并将此进程作为工作进程 |
|
|
| 用于分布式负载测试的 Locust Master 的主机或 IP 地址。仅在与 –worker 一起运行时使用。默认为 127.0.0.1。 |
|
|
| Locust Master 使用连接的端口进行分布式负载测试。仅在与 –worker 一起运行时使用。默认为 5557。 |
|
|
| 要包含在测试中的标签列表,因此只有具有任何匹配标签的任务才会被执行 |
|
|
| 要从测试中排除的标签列表,因此只有没有匹配标签的任务才会被执行 |
|
|
| 将当前请求统计信息以 CSV 格式存储到文件中。设置此选项将生成三个文件:[CSV_PREFIX]_stats.csv、[CSV_PREFIX]_stats_history.csv 和 [CSV_PREFIX]_failures.csv |
|
|
| 将每个统计条目以 CSV 格式存储到 _stats_history.csv 文件中。您还必须指定“–csv”参数才能启用此功能。 |
|
|
| 在 UI 运行中启用请求统计信息的定期打印 |
|
|
| 在 –headless 运行期间禁用定期打印请求统计信息 |
|
|
| 生成完成后重置统计数据。在分布式模式下运行时,应在 master 和workers 上设置 |
|
|
| 将 HTML 报告存储到指定的文件路径 |
|
|
| 禁用 Locust 的日志记录设置。相反,配置由 Locust 测试或 Python 默认值提供。 |
|
|
| 在调试/信息/警告/错误/严重之间进行选择。默认为信息。 |
|
|
| 日志文件的路径。如果未设置,日志将转到 stderr |
|
|
| 设置测试结果包含任何失败或错误时要使用的进程退出代码 |
|
|
| 退出之前等待模拟用户完成任何正在执行的任务的秒数。默认是立即终止。仅当运行 Locust 分布式时,master 进程才需要指定该参数。 |
相关文章:
locust压测工具环境搭建(Linux、Mac)
目录 使用anaconda搭建locust环境 1、anaconda安装python环境(推荐) 2、从conda安装locust 使用python虚拟环境搭建locust环境 1、直接安装python环境 2、从python环境安装locust 从依赖文件中安装locust环境 1、从anaconda安装locust 2、从pyt…...
欠定方程有多个真正解,超定方程可能无解所以有最小二乘解
Ax b x A\b ,但不是b/A,会报错矩阵维度不对应两个未知数,三个方程也可以是最小二乘解,因为无解满足三个方程,比如下面 A [0, 1; 1, 1;3,6]; % 一个接近奇异的矩阵 b [1; 2;3]; x A\b; % 求解线性方程组 % warning(off, MATLAB:…...
LeetCode27:移除元素
原题地址:. - 力扣(LeetCode) 题目描述 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素。元素的顺序可能发生改变。然后返回 nums 中与 val 不同的元素的数量。 假设 nums 中不等于 val 的元素数量为 k…...

JAVA 插入 JSON 对象到 PostgreSQL
博主主页:【南鸢1.0】 本文专栏:JAVA 目录 编辑 简介 所用: 1、 确保 PostgreSQL 数据库支持 JSON: 2、添加 PostgreSQL JDBC 驱动 3、安装和运行 PostgreSQL 4、建立数据库的连接 简介 在现代软件开发中,由于 JSON 数据…...
视图,物化视图,普通表区别简介
普通视图与物化视图的主要区别: 数据存储方式: 普通视图:不存储数据,仅包含查询定义。查询时,Oracle会根据视图的定义转换为相应的SQL语句去查询底层数据。物化视图:实际存储数据,类似于物理表。…...

C++ | Leetcode C++题解之第530题二叉搜索树的最小绝对差
题目: 题解: class Solution { public:void dfs(TreeNode* root, int& pre, int& ans) {if (root nullptr) {return;}dfs(root->left, pre, ans);if (pre -1) {pre root->val;} else {ans min(ans, root->val - pre);pre root-&g…...

使用Node.js构建实时聊天应用
使用Node.js构建实时聊天应用 Node.js简介 安装Node.js 使用npm安装依赖 创建基本的Web服务器 设置静态文件夹 创建聊天客户端 连接WebSocket 发送消息 接收消息 处理消息 实现私聊功能 实现群聊功能 用户身份验证 存储聊天记录 使用WebSocket进行文件传输 使用WebSocket进行屏…...

STM32F103C8T6学习笔记1--新建工程模板
1、简介 STM32是一系列由STMicroelectronics(瑞士意法半导体)公司设计和生产的32位微控制器产品线。这些微控制器基于ARM Cortex-M内核,并具有高性能、低功耗和多种外设接口的特点。STM32处理器被广泛应用于各种嵌入式系统领域,包…...

RK3568平台开发系列讲解(内存篇)Linux 内存优化
🚀返回专栏总目录 文章目录 一、如何正确采集 Linux 内存可用空间二、系统内存优化参考步骤2.1、优化 Linux Kernel module 所占用的内存空间2.3、将 Wi-Fi built-in kernel2.4、优化 Linux 文件系统所占用的内存空间2.5、上层优化2.6、客户定制优化2.6.1、对具体客户的具体产…...

企业数字化转型实施中的挑战与解决方案:架构引领的战略路径
在企业推动数字化转型的过程中,通常会面临复杂的挑战。随着技术的不断演进和业务环境的变化,企业架构(Enterprise Architecture, EA)成为帮助企业应对这些挑战的关键工具。通过提供一个全面的战略蓝图,EA使企业能够在保…...

《数字图像处理基础》学习05-数字图像的灰度直方图
目录 一,数字图像的数值描述 1,二值图像 2,灰度图像 3,彩色图像 二,数字图像的灰度直方图 一,数字图像的数值描述 在之前的学习中,我知道了图像都是二维信息&…...

【漏洞复现】某平台-QRcodeBuildAction-LoginSSO-delay-mssql-sql注入漏洞
《Java代码审计》http://mp.weixin.qq.com/s?__bizMzkwNjY1Mzc0Nw&mid2247484219&idx1&sn73564e316a4c9794019f15dd6b3ba9f6&chksmc0e47a67f793f371e9f6a4fbc06e7929cb1480b7320fae34c32563307df3a28aca49d1a4addd&scene21#wechat_redirect 《Web安全》h…...

Centos安装ZooKeeper教程(单机版)
本章教程介绍,如何在Centos7中,安装ZooKeeper 3.9.3版本。 一、什么是ZooKeeper ? Apache ZooKeeper 是一个分布式协调服务,用于大型分布式系统中的管理和协调。它为分布式应用提供了一个高性能的通信框架,简化了开发人员在构建复杂分布式系统的任务。ZooKeeper 能够解决一…...

A011-基于SpringBoot的视频点播系统设计与实现
摘 要 传统办法管理信息首先需要花费的时间比较多,其次数据出错率比较高,而且对错误的数据进行更改也比较困难,最后,检索数据费事费力。因此,在计算机上安装视频点播系统软件来发挥其高效地信息处理的作用,…...

云原生+AI核心技术&最佳实践
以下内容是我在陕西理工大学2023级人工智能专业和网络专业的演讲内容,分享给大家。 各位老师、同学们,大家好啊!能在这里跟大家一起聊聊咱们计算机专业那些事儿,我真的觉得超级兴奋! 首先,自我介绍一下&am…...

【Android】Service
文章目录 1.service2.startService3.bindService4.区别 1.service 在Android开发中,Service 是一个可以在后台长时间运行的组件,用于执行耗时操作或执行那些不需要与用户界面直接交互的任务。Service 不依赖于用户界面,即使用户切换到其他应…...

2-142【软件无线电原理与应用作业】基于matlab的圆形阵列的波束形成进行仿真
【软件无线电原理与应用作业】基于matlab的圆形阵列的波束形成进行仿真,具有14页文档。假设发射信号载频为1GHz,圆形阵列半径为0.8米,在圆周上均匀布置30个阵元。1.画出指向0度的方向图。2.如果目标在0度,有一不相干的干扰信号在3…...
在目录中按扩展名分类文件(python学习)(11.1)
# -*- coding:utf-8 -*- # FileName :SortBySuffix.py # Time :2024/11/1 15:13 # Author :liyiwei# Python脚本按扩展名在目录中对文件进行排序 import os from shutil import movedef sort_files(directory_path):# 遍历指定目录下的所有文件和文件夹for filename i…...
【网络安全 | 漏洞挖掘】逻辑漏洞+无限制爆破实现业务瘫痪
未经许可,不得转载。 文章目录 前言正文前言 目标:target.com,是一个为设计团队服务的工作平台。 该程序允许用户创建账户并组建团队,指定的领导者担任管理员。团队类型包括: 1、免费团队:限于一个项目,最多三份文件。 2、学生团队:项目和文件无限制,学生可免费获…...

【WRF工具】MPAS(多尺度预测模型)-输出WRF初始和横向边界条件
【WRF工具】MPAS(多尺度预测模型)-输出WRF初始和横向边界条件 MPAS概述模型概述主要特点 使用MPAS输出WRF初始和横向边界条件参考 从WPS的v3.9版本开始,metgrid.exe程序能够从 跨尺度预测模型(The Model for Prediction Across Sc…...
web vue 项目 Docker化部署
Web 项目 Docker 化部署详细教程 目录 Web 项目 Docker 化部署概述Dockerfile 详解 构建阶段生产阶段 构建和运行 Docker 镜像 1. Web 项目 Docker 化部署概述 Docker 化部署的主要步骤分为以下几个阶段: 构建阶段(Build Stage):…...

汽车生产虚拟实训中的技能提升与生产优化
在制造业蓬勃发展的大背景下,虚拟教学实训宛如一颗璀璨的新星,正发挥着不可或缺且日益凸显的关键作用,源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例,汽车生产线上各类…...
Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务
通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面
代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口(适配服务端返回 Token) export const login async (code, avatar) > {const res await http…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...

Linux --进程控制
本文从以下五个方面来初步认识进程控制: 目录 进程创建 进程终止 进程等待 进程替换 模拟实现一个微型shell 进程创建 在Linux系统中我们可以在一个进程使用系统调用fork()来创建子进程,创建出来的进程就是子进程,原来的进程为父进程。…...
docker 部署发现spring.profiles.active 问题
报错: org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...
服务器--宝塔命令
一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行! sudo su - 1. CentOS 系统: yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...
C++.OpenGL (14/64)多光源(Multiple Lights)
多光源(Multiple Lights) 多光源渲染技术概览 #mermaid-svg-3L5e5gGn76TNh7Lq {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3L5e5gGn76TNh7Lq .error-icon{fill:#552222;}#mermaid-svg-3L5e5gGn76TNh7Lq .erro…...

R语言速释制剂QBD解决方案之三
本文是《Quality by Design for ANDAs: An Example for Immediate-Release Dosage Forms》第一个处方的R语言解决方案。 第一个处方研究评估原料药粒径分布、MCC/Lactose比例、崩解剂用量对制剂CQAs的影响。 第二处方研究用于理解颗粒外加硬脂酸镁和滑石粉对片剂质量和可生产…...