软件测试培训之关于性能测试和优化的一些总结和思考

网友投稿 779 2022-11-07

本站部分文章、图片属于网络上可搜索到的公开信息,均用于学习和交流用途,不能代表睿象云的观点、立场或意见。我们接受网民的监督,如发现任何违法内容或侵犯了您的权益,请第一时间联系小编邮箱jiasou666@gmail.com 处理。

软件测试培训之关于性能测试和优化的一些总结和思考

1.性能测试的作用和目的

性能测试是性能优化的前提和基础,也是性能优化结果的检查和度量标准。

主观视角:用户感受到的性能

客观视角:性能指标衡量出来的性能

性能优化重点应该放在主观视角上。一味追求客观视角的性能性价比可能是极低的。

2.性能测试常用指标

响应时间:指应用系统从发出请求开始到收到最后响应数据所需要的时间。响应时间是系统最重要的性能指标,直观的反应了系统的快慢。(主观视角)

并发数:系统能够同时处理请求的数目,这个数字也反映了系统的负载特性。

吞吐量:指单位时间内系统处理的请求数量。吞吐量=并发数/响应时间(s)。常用度量单位:RPS(请求数每秒)、TPS、PPS(页面数每秒)、QPS、HPS(HTTP 请求数每秒)。

性能计数器:描述服务器或操作系统系统性能的一些数据指标。如:系统负载、内存使用、磁盘与 IO 等。

3.性能测试方法

(1)常规测试

性能测试:验证性能是否能达到预期。

负载测试:检测系统能达到的最大安全临界值,一般是某种资源耗尽后开始出现性能下降的点。

压力测试:获得系统能承受的的最大压力点。

稳定性测试:模拟生产环境下长时间运行,检测系统运行的稳定情况。

(2)全链路压测

在特定业务场景下,将相关链路完整串联起来同时施压。目的是,暴露瓶颈、探测系统整体处理能力以及大促前的容量规划。

挑战:

业务众多,且牵涉到整条链路上的所有基础设施和中间件,如何保证流量畅通无死角?

测试数据如何构造,更贴近真实?

如果直接在生产环境进行模拟,如何保证线上安全?

大促活动流量如何模拟?

4.性能优化的两个基本原则

你不能优化一个没有测试的软件

你不能优化一个你不了解的软件

5.性能优化的一般方法

性能测试,获得性能指标

指标分析,发现性能与资源瓶颈

架构与代码分析,寻找性能与资源瓶颈原因

架构与代码优化

性能测试,优化闭环

6.系统优化的分层思想

机房与骨干网络

服务器与硬件性能

操作系统

虚拟机性能(指 java 虚拟机、编译器等)

基础组件性能

软件架构性能

软件代码性能

从优化顺序和层次来看,最简单粗暴的方法就是垂直扩容。

其次是使用更新版本的系统软件和中间件。

7.架构优化三板斧

缓存

异步

集群

上一篇:软件测试培训之新人如何能尽快的展开测试工作
下一篇:Kubernetes 集群和应用监控方案的设计与实践
相关文章

 发表评论

暂时没有评论,来抢沙发吧~