Locust、Jmeter压力测试,如何选择工具

简介: Locust、Jmeter压力测试,如何选择工具

最近由于业务需要,对系统做压力测试,对于常见的工具中我选择了这三项Locust,Jmeter。

◆ Jmeter在做小并发的负载测试时,感觉十分方便,特别是终端命令行模式运行,可以对服务器优化前后、代码缓存优化前后的结果有很好的对比。

但是在这些宏观意义上的对比结束后,精确到细节,大并发的时候,jmeter感觉并不给力。

同样运行在mac终端,启动20000个用户,基本上java的运行机制导致jmeter大部分完成不了。这个并发启动用户数受本地机器配置影响较大,您的机器CPU,RAM,物理内存等因素。压测必然是大量线程,但问题是个人PC性能有限,可能出现服务器还没挂,自己电脑先挂了,所以采用了jmeter GUI分布式以及jmeter NON-GUI分布式。使用普通系统,最多可以使用250-500 用户。如果想1K 10K用户,那么就不得不采取其他的方式或者NeoLoad、Locust了。

◆ Locust:这个工具是基于Python安装的,很轻量,但是对于单机大并发来说,很给力。

实际测试中,2000个用户以最大速率启动2000个用户,持续40秒钟,总request量已达20000+个。

并且RPS(request per second)高达100+左右,相比于jmeter已经很给力了。

因此对于单台机器多并发来讲,我觉得Locust较好,虽然Locust需要自己编写程序,但是对于让你写业务程序来讲,这个程序就简单的多了。

(LoadRunner用过几次,可能是我不会用或者其他原因,使用时这个工具对浏览器版本有要求,对于我来讲体验感不是很好)

相关文章
|
6天前
|
监控 Java 测试技术
Java性能测试与调优工具使用指南
Java性能测试与调优工具使用指南
|
9天前
|
人工智能 测试技术 索引
基于LangChain手工测试用例生成工具
使用Python的LangChain框架,测试工程师能自动化从需求文档生成思维导图。代码示例演示了如何加载文档,提取信息,创建向量索引,执行检索,并通过PlantUML生成MindMap图像。流程中,AI替代了手动梳理需求和创建测试用例的过程,涉及的关键组件包括TextLoader、OpenAIEmbeddings、FAISS检索和AgentExecutor。该实践帮助掌握LangChain的检索和Agent功能,以实现文档到测试用例的智能转换。
14 1
|
11天前
|
测试技术 Windows
软件测试之 性能测试 性能测试基础指标 Loadrunner、Jmeter等工具(下)
软件测试之 性能测试 性能测试基础指标 Loadrunner、Jmeter等工具(下)
17 2
支付系统---微信支付14----创建案例项目---介绍,第二步引入Swagger,接口文档和测试页面生成工具,定义统一结果的目的是让结果变得更加规范,以上就是谷粒项目的几个过程
支付系统---微信支付14----创建案例项目---介绍,第二步引入Swagger,接口文档和测试页面生成工具,定义统一结果的目的是让结果变得更加规范,以上就是谷粒项目的几个过程
|
4天前
|
Prometheus 监控 数据可视化
性能测试:主流性能监控工具介绍
Linux系统中,`vmstat`和`top`提供基本监控;Nmon是实时性能分析工具,轻量且功能丰富;Collectd+InfluxDB+Grafana组合用于系统数据收集、存储和可视化;Prometheus+Grafana则提供灵活的监控和定制化仪表板。这些工具帮助企业监控系统性能,及时发现和解决问题。
10 0
|
4天前
|
测试技术 Apache Scala
性能测试方法与工具比较
性能测试方法与工具比较
|
4天前
|
测试技术 Apache Scala
性能测试方法与工具比较
性能测试方法与工具比较
|
6天前
|
Java jenkins 持续交付
Jenkins是开源CI/CD工具,用于自动化Java项目构建、测试和部署。通过配置源码管理、构建触发器、执行Maven目标,实现代码提交即触发构建和测试
【7月更文挑战第1天】Jenkins是开源CI/CD工具,用于自动化Java项目构建、测试和部署。通过配置源码管理、构建触发器、执行Maven目标,实现代码提交即触发构建和测试。成功后,Jenkins执行部署任务,发布到服务器或云环境。使用Jenkins能提升效率,保证软件质量,加速上线,并需维护其稳定运行。
36 0
|
8天前
|
Java 测试技术 持续交付
现代软件测试中的自动化工具与挑战
随着软件开发的复杂性增加,自动化测试工具在现代软件测试中发挥着越来越重要的作用。本文将探讨自动化测试工具的种类及其应用领域,分析在实际应用中可能面临的挑战,并提出应对策略,以期帮助开发团队更好地利用自动化测试提升软件质量。
11 0
|
10天前
|
Web App开发 测试技术 iOS开发
一篇文章讲明白locust性能测试
一篇文章讲明白locust性能测试