工作总结:压测篇

embedded/2025/1/31 11:10:27/

前言

压测是测试需要会的一项技能,作为开发,有点时候也要会一点压测。也是被逼着现学现卖的。


一、压测是什么,以及压测工具的选择

压测,即压力测试,是一种性能测试手段,通过模拟大量用户同时访问系统,来测试系统在高负载情况下的性能表现,如响应时间、吞吐量、资源利用率等,以发现系统的性能瓶颈和潜在问题。

压测工具有很多,目前测试的业界开源主流是JMeter,商用版比较有名的是LoadRunner。但这两个不是学习成本高,就是需要money。

那么,有没有一款适合后端开发的上手快,学习成本低,开箱即用的压测工具呢?有,wrk2。
如果有python 的基础的,还有点时间学习的,就用Locust。

wrk2

wrk2真的超级简单,你只需要把这个工具给下载下来,然后直接使用命令就行了。环境变量如果懒得配就不要配了。就直接
./wrk -t10 -c10 -d10s -R1000 -s 脚本.lua[可选] 链接
-t是线程
-c是连接数
-d是持续时间
-R是模拟的并发
-s是写的lua脚本,不会写可以让GPT帮你写,可不带
就没了,就是这么简单,简直太适合后端了!!!
初探wrk2

唯一注意的是,不要自己压自己(在项目的机器上面压项目,压测也需要一定的计算)

locust

locust 相比于wrk2,会更加复杂一点,需要你编写python代码,如果没空就用wrk2吧。但locust可以进行分布式压测。需要的时间可以再学。


http://www.ppmy.cn/embedded/158335.html

相关文章

Apple M1 ARM MacBook 安装 Apache TVM

一、前置准备 Apple Silicon MacBook 本文以 Apple M1/M2 为例,M3 及后续版本同理。 已安装 Homebrew macOS 上的包管理器,可前往 Homebrew 官网 查看安装指引。 已安装 Anaconda 或 Miniforge 确保 Conda 是 ARM 版本(通过 conda info | g…

《网络安全中的“泛洪”攻击:揭秘、防范与应对策略》

各类泛洪攻击总结 IPV4泛洪 一、什么是泛洪? 泛洪的基本原理就是基于协议通信,完成大流量高并发操作,导致目标主机各类资源消耗过多而无法提供正常的服务。基于多线程或多进程(MAC地址泛洪,ARP泛洪欺骗)。 (1) 攻击…

TL494方案开关电源方案

TL494是德州仪器公司生产的一款固定频率脉宽调制(PWM)控制芯片,广泛应用于开关电源等电路中,以下是其相关方案介绍: 基本特性 双端输出:可提供推挽或单端两种输出模式。推挽模式下能驱动两个功率开关管交…

vue框架技术相关概述以及前端框架整合

vue框架技术概述及前端框架整合 1 node.js 介绍:什么是node.js Node.js就是运行在服务端的JavaScript。 Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎。 作用 1 运行java需要安装JDK,而Node.js是JavaScript的运行环…

C++——list的了解和使用

目录 引言 forward_list与list 标准库中的list 一、list的常用接口 1.list的迭代器 2.list的初始化 3.list的容量操作 4.list的访问操作 5.list的修改操作 6.list的其他操作 二、list与vector的对比 结束语 引言 本篇博客要介绍的是STL中的list。 求点赞收藏评论…

【Bug 记录】el-sub-menu 第一次进入默认不高亮

项目场景: 项目场景:el-sub-menu 第一次进入默认不高亮 问题描述 例如:sub-menu 的 index 后端默认传过来是 number,我们需要手动转为 string,否则会有警告,而且第一次进入 sub-menu 默认不高亮。 解决方…

论文阅读(十二):全基因组关联研究中生物通路的图形建模

1.论文链接:Graphical Modeling of Biological Pathways in Genome- wide Association Studies 摘要: 全基因组关联研究(Genome-wide association studies,GWASs)被广泛应用于寻找疾病相关基因的候选者,以…

Autogen_core: Model Context

目录 示例代码代码解释另一个例子 示例代码 from dataclasses import dataclassfrom autogen_core import AgentId, MessageContext, RoutedAgent, SingleThreadedAgentRuntime, message_handler from autogen_core.model_context import BufferedChatCompletionContext from …