性能测试面试题
1、什么是性能测试?
性能测试是指通过模拟生产运行的业务压力或用户使用场景来测试系统的性能是否满足生产性能的要求
2、性能测试中关注哪些指标?
常用的网站性能测试指标有:并发用户数、事务响应时间、每秒事务数、每秒点击量、吞吐量、CPU使用率、物理内存使用
3、解释什么是吞吐量、并发数、响应时间,怎么得出最大并发数?
吞吐量:指单位时间内系统能处理的请求数量,体现系统处理请求的能力,这是目前最常用的性能测试指标
吞吐量常用量化指标:QPS(每秒查询数)、TPS(每秒事务数)、另外还有HPS(每秒HTTP请求数)
跟吞吐量有关的几个重要指标是:并发数、响应时间 TPS(每秒事务数)=并发数/平均响应时间
并发数:是指系统同时能处理的请求数量,这个也是反映了系统的负载能力
响应时间:响应时间是指执行一个请求从开始到最后收到响应数据所花费的总体时间,是一个系统最重要的指标之一,它的数值大小直接反映了系统的快慢
如何得出最大并发数:
按照不断加压直至吞吐量不再增加时得出最大并发用户数
计算最大用户并发数,强调同时操作,也可以理解为同时发送请求,针对这个问题使用RPS定时器测试每秒最大请求数;在平衡状态下,最大并发用户数=RPS*响应时间
4、性能测试、压力测试、负载测试的区别
性能测试:模拟用户负载来测试系统在负载情况下,系统的响应时间、吞吐量等,它的目的是为了获取系统的指标
负载测试:是通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试。例如:响应时间超过预定指标或某种资源已经达到饱和状态
压力测试:逐步增加系统负载,测试系统性能的变化,并最终确定在什么负载条件下系统性能处于失效状态,并以此来获得系统所提供的最大服务级别的测试。例如:测试一个web站点在最大的负载下,系统的事务响应时间何时会变得不可接受或事务不能正常执行
负载测试和压力测试区别:
负载测试强调系统在正常工作情况下的性能指标
压力测试的目的是发现在什么条件下系统的性能变得不可接受,发现应用程序性能下降的拐点
负载测试和压力测试都属于性能测试
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架