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…...
三维GIS开发cesium智慧地铁教程(5)Cesium相机控制
一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点: 路径验证:确保相对路径.…...
多场景 OkHttpClient 管理器 - Android 网络通信解决方案
下面是一个完整的 Android 实现,展示如何创建和管理多个 OkHttpClient 实例,分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...
最新SpringBoot+SpringCloud+Nacos微服务框架分享
文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...
CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云
目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南 在数字化营销时代,邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天,我们将深入解析邮件打开率、网站可用性、页面参与时…...
DeepSeek源码深度解析 × 华为仓颉语言编程精粹——从MoE架构到全场景开发生态
前言 在人工智能技术飞速发展的今天,深度学习与大模型技术已成为推动行业变革的核心驱动力,而高效、灵活的开发工具与编程语言则为技术创新提供了重要支撑。本书以两大前沿技术领域为核心,系统性地呈现了两部深度技术著作的精华:…...
Python 高效图像帧提取与视频编码:实战指南
Python 高效图像帧提取与视频编码:实战指南 在音视频处理领域,图像帧提取与视频编码是基础但极具挑战性的任务。Python 结合强大的第三方库(如 OpenCV、FFmpeg、PyAV),可以高效处理视频流,实现快速帧提取、压缩编码等关键功能。本文将深入介绍如何优化这些流程,提高处理…...
海云安高敏捷信创白盒SCAP入选《中国网络安全细分领域产品名录》
近日,嘶吼安全产业研究院发布《中国网络安全细分领域产品名录》,海云安高敏捷信创白盒(SCAP)成功入选软件供应链安全领域产品名录。 在数字化转型加速的今天,网络安全已成为企业生存与发展的核心基石,为了解…...
LTR-381RGB-01RGB+环境光检测应用场景及客户类型主要有哪些?
RGB环境光检测 功能,在应用场景及客户类型: 1. 可应用的儿童玩具类型 (1) 智能互动玩具 功能:通过检测环境光或物体颜色触发互动(如颜色识别积木、光感音乐盒)。 客户参考: LEGO(乐高&#x…...
SFTrack:面向警务无人机的自适应多目标跟踪算法——突破小尺度高速运动目标的追踪瓶颈
【导读】 本文针对无人机(UAV)视频中目标尺寸小、运动快导致的多目标跟踪难题,提出一种更简单高效的方法。核心创新在于从低置信度检测启动跟踪(贴合无人机场景特性),并改进传统外观匹配算法以关联此类检测…...
