Locust的使用一
Locust 是一个开源负载测试工具,使用 Python 代码定义用户行为
安装
pip install locust
查看是否安装成功
locust -V
测试locustfile.py
import time
from locust import HttpUser, task, between
class QuickstartUser(HttpUser):
wait_time = between(1, 2.5)
@task
def hello_world(self):
self.client.get("/hello")
self.client.get("/world")
def on_start(self):
self.client.post("/login", json={"username":"foo", "password":"bar"})
说明:
为模拟的用户定义一个类。它继承自HttpUser,为每个用户提供了一个 client 属性,该属性是HttpSession的一个实例。可用于向负载测试的目标系统发出 HTTP 请求
为它每个虚拟用户创建一个此类的实例,并且每个虚拟用户会在自己的 gevent 线程中运行这些实例
on_start() 方法是在虚拟用户启动(启动事件)时会触发的方法
只有通过 @task
装饰的方法才会在 Locust 虚拟用户运行过程中被调用
启动
locust -f locustfile.py --web-host="127.0.0.1"
启动 Locust 后,会在本地开启一个服务
浏览器打开web监控页面 ,http://127.0.0.1:8089/
说明:
Number of users to simulate:模拟的总虚拟用户数
Hatch rate (users spawned/second):每秒启动的虚拟用户数
HOST:测试的地址
输入参数点击Start swarming,开始运行性能测试
Statistics聚合报告
说明
Type:请求类型
Name:请求名称
requests:当前已完成的请求数量
fails:当前失败的数量
Median:响应时间的中间值,单位为毫秒
90%ile:根据正态分布,90%的响应时间在正态分布平均值下方
Average:平均响应时间,单位为毫秒
Min:最小响应时间,单位为毫秒
Max:最大响应时间,单位为毫秒
average Size:平均每个请求的数据量,单位为字节
current RPS(requests per second):每秒钟处理请求的数量,即RPS
Charts曲线展示
Failures失败请求的展示
Exceptions异常请求的展示
Download Data测试数据下载模块
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
2016-02-03 mysql通过sql语句如何批量去掉某一个表中某一个字段的下面的相同部分字符串