常见性能测试工具对比

news/2024/5/18 16:24:06/文章来源:https://blog.csdn.net/m0_58552717/article/details/137546916

在性能测试工作中,我们常常会遇到好几个工具,但是每一个工具都有自己的优势,一时间不知道怎么选择。

今天我们就将性能测试常用的工具进行对比,这样大家在选择工具的时候心里就有底啦!

阿里云PTS

性能测试PTS(Performance Testing Service)是阿里云一款商业化的性能测试工具。支持按需发起压测任务,可支持百万并发、千万TPS流量发起能力,100%兼容JMeter。

PTS支持的场景编排、API调试、流量定制、流量录制等功能,可快速创建业务压测脚本,精准模拟不同量级用户访问业务系统,帮助业务快速提升系统性能和稳定性。

图片

阿里云PTS具备如下特性:


1、免运维、开箱即用

SaaS化施压、最大支持百万级并发、千万级TPS流量自助发起能力。

2、支持多协议

支持HTTP1.1/HTTP2/JDBC/MQTT/

Kafka/RocketMQ/Redis/WebSocket/RMTP/HLS/TCP/UDP/Spring Cloud/Dubbo/gRPC等主流协议。

3、支持流量定制

支持全球施压地域定制、运营商流量定制、IPv6流量定制。

4、稳定、安全

阿里自研引擎、基于信号量模型、单机支持超高并发,历经多年阿里双十一场景验证可轻松模拟亿级别流量,更加稳定和安全。

5、性能压测一站式解决方案

无需编码即可构建复杂压测场景。覆盖压测场景构建、压测模型设定、启动压测、分析定位问题、查看压测报告等完整的压测生命周期。

6、100%兼容开源JMeter


Apache JMeter

Apache JMeter是Apache组织开发的基于Java的压力测试工具。

图片

Apache JMeter具备如下特性:


1、支持分布式压测。

2、支持图形化界面,且支持流程编排,同时支持断言、逻辑控制器等高级指令,可满足复杂业务压测需求。

3、扩展性强,开发、测试人员可通过编写自己的插件,满足各种压测需求。

4、技术生态好,有强大的开源社区支持,开发者活跃度高。

5、支持查看资源监控、性能报告,但可查看的监控和报告指标较少。

6、基于并发模型,受限于JVM,单机无法支持超高并发。且只支持并发施压模型,不支持吞吐量施压模型。

7、开源支持的分布式能力无法大规模应用到生产环境,部署成本高。

8、不支持测试用例管理、压测脚本管理等功能。


LoadRunner

LoadRunner是一种预测系统行为和性能的负载测试工具,通过模拟实际用户的操作行为进行实时性能监测,来帮助测试人员更快的查找和发现问题。

LoadRunner适用于各种体系架构,能支持广泛的协议和技术,为测试提供特殊的解决方案。企业通过LoadRunner能最大限度地缩短测试时间,优化性能并加速应用系统的发布周期。

图片

LoadRunner提供了3大主要功能模块:

VirtualUser Generator(用于录制性能测试脚本),

LoadRunner Controller(用于创建、运行和监控场景),

LoadRunner Analysis(用于分析性能测试结果)既可以作为独立的工具完成各自的功能,又可以作为LoadRunner的一部分彼此衔接,与其他模块共同完成软件性能的整体测试。

LoadRunner具备如下特性:


1、按需生产工作量   

能够驱动成百上千个虚拟用户、执行不同的业务流程、模拟已部署应用程序将要面临的生产条件。

2、企业环境支持虚拟用户后,测试过程便自动化了。 

LoadRunner提供广泛的测试环境,支持多种协议和平台。它使得降低总体拥有成本(TCO)称为可能。

3、企业监控支持  

HP LoadRunner拥有非侵入性的实时性能监控程序,可提供被测系统所有部分的详细指标。这包括Web服务器、应用程序服务器、数据库、企业资源规划(ERP)和CRM系统、防火墙和负载平衡器。HP LoadRunner可识别硬件局限和软件配置问题

4、诊断   

HP LoadRunner可跟踪、计时处于负载情况下的单独应用程序组件,并可排除故障。可从缓慢的最终用户交易着手,深入查明导致变慢的瓶颈方法或SQL语句。这样详细的结果有助于每个负载测试向开发人员提供最终可采取的行动,减少优化J2EE、Siebel和Oracle部署所需的成本与时间。

5、自动分析   

HP LoadRunner的AutoCorrelation向导会自动整理所有的监控和诊断数据,并计算导致性能降低的最主要的5个原因。可将性能测试结果转化为可处理的精确数据,从而使开发团队大大减少了解决时间,并允许执行更多的测试周期。这会帮助您将高质量的应用程序投入生产。

6、简易使用   

HP LoadRunner是从底层为QA用户构建的。它提送可视化脚本语言、数据和AutoCorrelation向导及ActiveScreen技术,使得编写脚本和运行负载测试简单易行。因此带来更短的起步时间、更快的ROI以及在数周培训之内就能进行性能测试。

7、高度可扩展性   

HP LoadRunner对于在有限的硬件条件下的高度可扩展性来说,每个虚拟用户需要较低的CPU和内存资源。这有助于降低实施过程中潜在的硬件成本。

8、统一的脚本引擎   

HP LoadRunner与HP Business Availability Center软件具有相同的脚本引擎。这将降低培训成本、脚本开发成本以及HP软件的TCO(Total Cost of Ownership,总体拥有成本)


Locust

图片

locust 主要特点如下:


1、使用普通的Python脚本用户测试场景

2、分布式和可扩展,支持成千上万的用户

3、基于Web的用户界面,用户可以实时监控脚本运行状态

4、几乎可以测试任何系统,除了web http接口外,还可自定义clients测试其他类型系统


在项目中,根据项目的实际情况去选择相应的工具,或者根据你擅长的工具去使用,能实现要获取的数据即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_1045567.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux】shell 脚本基础使用

在终端中输入命令可以完成一些常用的操作,但是我们都是一条一条输入命令,比较麻烦,为了解决这个问题,就会涉及到 shell 脚本,它可以将很多条命令放到一个文件里面,然后直接运行这个文件即可。 shell 脚本类…

【UnityRPG游戏制作】Unity_RPG项目之界面面板分离和搭建

👨‍💻个人主页:元宇宙-秩沅 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 秩沅 原创 👨‍💻 收录于专栏:Uni…

【Qt】多线程

目录 一、常用API 二、线程安全 2.1 互斥锁 2.2 条件变量 2.3 信号量 在Qt中,多线程的处理一般是通过QThread类来实现 QThread代表一个在应用程序中可以独立控制的线程,也可以和进程中的其他线程共享数据。QThread对象管理程序中的一个控制线程 …

深入探索力扣第12题:整数转罗马数字的算法之旅

作者介绍:10年大厂数据\经营分析经验,现任大厂数据部门负责人。 会一些的技术:数据分析、算法、SQL、大数据相关、python 欢迎加入社区:码上找工作http://t.csdnimg.cn/Q59WX作者专栏每日更新: LeetCode解锁1000题: 打…

业务逻辑漏洞(靶场) fiddler

目录 fiddler简介: 业务逻辑漏洞: fiddler下载 靶场: 实验一 ​编辑实验二(ps 更改实验url会变,fiddler没抓到东西看看代理改没改) 实验三 实验四 fiddler简介: 一款网络抓包工具&#…

ht1622不显示无反应问题解决

如果你正在写ht1622 驱动时,怎么看程序都没问题,抓取波形,示波器分析波形,如果都没有问题,那么很大可能是硬件问题,检测看看 ht1622 RD是不是接地了。 RD 低会进入读取模式,所以不用RD 请将RD悬…

雄安建博会:中矿雄安新区的总部开工建设

中矿落位雄安:助力国家战略与新区发展 雄安新区,作为中国未来发展的重要战略支点,正迎来一系列央企总部的疏解与建设。最近,中国矿产资源集团有限公司(简称“中矿”)在雄安新区的总部项目正式开工建设&…

Jettison 1.8.7直装版 外部磁盘辅助弹出

Jettison 是一款适用于 macOS 的实用工具,旨在简化外部驱动器的管理。它可以自动卸载和重新挂载外部驱动器,帮助您更方便地使用和保护您的存储设备。 软件下载:Jettison 1.8.7直装版下载 自动卸载和重新挂载:Jettison 可以在您离开…

yolo预标注的txt转换成labelme中segment的json

前言 在yolo预标注的时候,想把保存的txt转换成labelme中segment的json,于是写了下面的脚本。 1.引入库 完整代码: import os import json from tqdm import tqdmdef get_image_size(image_path):from PIL import Imagewith Image.open(ima…

Spring boot如何执行单元测试?

Spring Boot 提供了丰富的测试功能,主要由以下两个模块组成: spring-boot-test:提供测试核心功能。spring-boot-test-autoconfigure:提供对测试的自动配置。 Spring Boot 提供了一个 spring-boot-starter-test一站式启动器&…

unipush+个推实现消息推送

1.注册个推平台的帐号个推,专业的数据智能服务商-为垂直领域提供数据智能解决方案 2.应用列表中选择新增应用/服务 3.填写下应用信息4.创建好应用后在manifest.json中的sdkConfigs配置上写入appid、appkey、appsecret "sdkConfigs" : {"ad" :…

硬件学习件Cadence day16 做个笔记,BOM 位号这个参数输出的两种情况。

1. BOM 中位号有3种情况 1. 一种是位号生成时多行,每行是固定的位数。(如下图所示) 2. 一种是位号生成时只有一行,但是可以使用表格中自动换行功能,给他换行,但是这个位号本质上只有一行,只是因…

基于深度学习的乳腺癌智能检测分割与诊断系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战、目标分割、人工智能

《博主简介》 小伙伴们好,我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源,可关注公-仲-hao:【阿旭算法与机器学习】,共同学习交流~ 👍感谢小伙伴们点赞、关注! 《------往期经典推…

虚拟网络设备的真正使命:实现有控制的通信

在数字化时代📲,网络安全🔒成为了企业和个人防御体系中不可或缺的一部分。随着网络攻击的日益复杂和频繁🔥,传统的物理网络安全措施已经无法满足快速发展的需求。虚拟网络设备🖧,作为网络架构中…

一起学习python——基础篇(5)

今天讲一下python的数据类型。 数据类型主要分为文本类型、数值类型、序列类型、映射类型、集合类型、布尔类型、二进制类型六大类型。 文本类型:str 数值类型: int, float, complex 序列类型: list, tuple, range 映射类型:…

【数据结构与算法】搜索算法(深度优先搜索 DFS和广度优先搜索 BFS)以及典型算法例题

目录 搜索算法(深度优先搜索DFS和广度优先搜索BFS)以及典型算法例题深度优先搜索 (Depth First Search 简称 DFS)DFS 的设计步骤深度优先搜索(DFS)算法例题例题一:N皇后问题例题二:路…

SQL注入sqli_labs靶场第五、六题

第五题 根据报错信息,判断为单引号注入 没有发现回显点 方法:布尔盲注(太耗时,不推荐使用) 1)猜解数据库名字:(所有ASCII码值范围:0~127) ?id1 and length…

成功解决> 错误: 无效的源发行版:17

运行项目的时候出现下面的报错: Execution failed for task ‘:device_info_plus:compileDebugJavaWithJavac’. 错误: 无效的源发行版:17 原因:没有设置好自己项目的JDK版本 解决:1.检查自己项目的JDK版本 将自己的项目改为JDK 1…

MySQL高级(索引分类-聚集索引-二级索引)

目录 1、主键索引、唯一索引、常规索引、全文索引 2、 聚集索引、二级索引 3、回表查询 4、通过id查询和通过name查询那个执行效率高? 5、 InnoDB主键索引的 B tree 高度为多高呢? 1、主键索引、唯一索引、常规索引、全文索引 在MySQL数据库&#xff0c…

C++的stack和queue类(一):适配器模式、双端队列与优先级队列

目录 基本概念 stack的使用 queue的使用 适配器模式 stack.h test.cpp 双端队列-deque 仿函数 优先队列 priority_queue的使用 queue.h文件 stack.h文件 test.cpp文件 日期类的比较 商品的比较 结论 基本概念 1、stack和queue不是容器而是容器适配器&…