监控对性能测试实践的重要性

156 篇文章 0 订阅
92 篇文章 0 订阅

2024软件测试面试刷题,这个小程序(永久刷题),靠它快速找到工作了!(刷题APP的天花板)-CSDN博客文章浏览阅读1.3k次,点赞62次,收藏10次。你知不知道有这么一个软件测试面试的刷题小程序。里面包含了面试常问的软件测试基础题,web自动化测试、app自动化测试、接口测试、性能测试、自动化测试、安全测试及一些常问到的人力资源题目。最主要的是他还收集了像阿里、华为这样的大厂面试真题,还有互动交流板块……https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5501这几天好几位同学私信咨询了我很多关于性能测试的问题,特别是性能指标的理解,比如:“QPS和TPS有什么区别,该如何在实际工作中理解这些指标的含义”?

通过日常观察和交流,我发现部分测试同学对于技术指标的理解还是有些差异,归根结底的原因是知识面的广度较为缺乏,或者说对运维监控相关的知识了解不足。

这篇文章,从性能测试的角度出发,聊聊常见的一些监控技术指标以及相关的工具和作用。

不同视角性能

说起性能测试关注的指标,可能很多同学会说tps、rt、99rt、cpu/memery使用率等等。当然这些指标是我们日常工作中经常遇到和会关注的,但实际上在性能测试过程中,要根据不同的业务场景、技术架构以及问题表现来关注分析不同的指标。而不是只关注自己看到的指标,填充到表格里提交一份所谓的压测报告就完事的。

下面的表格,我列举了在考虑系统性能时,不同角色关注的一些常见的监控指标,仅供参考。

不同视角

关注指标

性能测试同学

TPS/ART/99RT/Error%

研发工程师

QPS/99RT/YGC/FGC/OOM

运维工程师

CPU%/Memory%/Net Work/Disk IO

数据库工程师

锁/索引/慢SQL/命中率

上表中所列出的指标,仅代表日常工作和压测时比较关注的通用指标,但在实际的项目和场景中,需要根据具体情况去监控分析更多的指标,切记不要生搬硬套。

看完下面的监控分层和指标含义,大家应该就可以理解我上面这句话了。

理解监控分层

下面是一个常见的微服务架构的简易模型:

软件系统为用户提供服务,其背后是由多个软硬件组合支撑的,缺一不可。

如上图所示,软件系统的复杂性导致了当它出现性能问题时,影响性能的因素可能是其中任意一个组件。因此在性能测试中,要关注不同层级的指标。下表是不同层级我们需要关注的一些监控指标:

监控分层

常见关注指标

网络

带宽是否足够、是否有丢包延迟

网关

负载均衡

服务层

TPS/ART/99RT/Error%/Load/异常/垃圾回收/通信协议

中间件

超时/线程池/缓存命中/消费速率&消息积压/批处理

持久化存储

锁/索引/慢SQL/命中率

硬件服务器

CPU%/Memory%/Net Work/Disk IO

操作系统

Swap/内核参数/文件句柄/IO调度

你看,其实影响性能的因素很多,不同层级要关注的指标也各有不同。

很多性能测试同学在工作中往往太过于关注服务层的技术指标,其实所谓的TPS/ART/99RT只是反映了服务在当前的负载下的性能表现,这是结果。但是为什么是这个数值?哪些因素影响了它的性能表现?如何优化性能?就需要从不同维度去分析定位,这才是性能测试中真正的价值所在。

常见监控工具

聊完了不同视角的性能指标和监控分层后,来看看有哪些常见的监控工具。如下表:

工具名称

工具作用

类似工具

grafana

可视化监控面板,可自由定制

kibana

exporters

数据采集工具,兼容多种操作系统

telegraf

promethous

时序数据库,存储exporters采集的数据

influxdb

skywalking

链路追踪,请求调用链耗时/状态展示

cat/pinpoint

mysqlreport

mysql全局监控工具

pt-query-digest

jvisualvm

Java代码分析工具,JVM自带

arthas/google-perftools

上面提到的工具,像grafana+exporters+permethous,是目前使用范围最广的监控工具组合,它可以覆盖上面第二部分提到的绝大部分维度的数据采集和存储以及展示。

当然,像链路追踪、代码分析工具及针对特定技术组件(如mysql)的监控分析工具,是否在团队内使用要看具体情况。选择合适的工具在合适的场景,灵活解决问题即可。

上面提到了监控分层和不同层级的监控工具,在实际的落地过程中,还需要考虑其他问题,如监控工具落地的难易程度,落地成本,接入工具对性能的影响等,都是需要考虑的点。

行动吧,在路上总比一直观望的要好,未来的你肯定会感谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入群: 786229024,里面有各种测试开发资料和技术可以一起交流哦。

最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】在这里插入图片描述
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

  • 26
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值