性能测试大实话

之前时不时有微信好友或者Q群群友咨询:

1. 是不是会一些linux命令、会几个工具、会改常见中间件性能指标计数器,就能做性能分析调优了?网上或者某些资料演示的就是通过几个命令就定位到方法了

2. 或者如某些人或者某些j构宣传的,不会代码,会上面这些就能立马成为高级性能测试?就能大展手脚独立承担性能测试任务、完成调优了?

我想说的是:

1. 代码是必须的

其实,命令、工具只是辅助,对于简单的项目,有时候能帮我们快速找到问题,但是现在基本上都是比较复杂的项目,所以,需要进一步分析。

虽然网上或者某些资料演示的通过几个命令就定位到方法了,其实,有些演示犹如演戏,为了演示而故意这样写代码(几行代码就可以写出一个oom的问题、或者cpu高的问题)

实际项目是很复杂的,而要开发、部署企业级复杂架构项目来进行演示,各种成本都是非常高的

就算你定位到方法了,那怎么优化呢?代码看不懂,也只能发给开发分析调优

如果开发比较菜,也懵逼,一脸无赖的说:你定位错了吧,不可能的事儿,是服务器资源的问题吧!

估计你心里一万匹曹尼玛

2. 不是所有性能问题都涉及到代码

性能问题很多,不是所有的性能问题都需要看代码,比如压测过程中报获取不到连接,估计是连接满了,你适当调整下参数估计就ok了,

就像dba,估计也没研究过数据库的源码吧?一样可以凭借经验对数据库进行调优

3. 命令、工具不是万能的

有时候,通过命令,顶多能帮我们定位到问题,比如定位到代码方法,但是要调优,还是得懂代码

而且,有时环境或者权限受限,比如:非自带命令没有权限安装,或者没权限往服务器上传安装包,或者普通用户无法运行命令,这下怎么分析呢?

所以,不要过度依赖非自带命令,注意,这里强调的是非自带命令,自带命令还是要好好利用的;

4. 团队协作很重要

 

学习建议

要学好性能需要掌握的内容:

1. 压测工具及场景设计

2. 搭建监控平台(现在基本上都是集群环境)

3. 操作系统(掌握常见自带命令)

4. 集群应用(发现可能是代码问题,能看懂代码,大部分都是java,那就学学:java基础、spring、springboot等等)

5. RDBMS、NoSQL、MQ等技术栈,这些你知道大概原理和常用的性能计数器就可以了,当然,能看源码就更6了,这些都是经历过千锤百炼的,本身性能问题很少,大概率是一些配置的问题

6. JVM

7. 网络

8. 其它(具体看项目架构用到的技术栈)

能看懂代码才是“王炸”,比如根据堆栈信息,能去分析代码,万事开头难,不懂的可以问开发或者度娘,搞不定可以发给开发,你就看他怎么分析的,多跟着学习

总之,要深入做性能,代码是绕不过去的,代码至少能看懂,所以,别被网上一些宣传的忽悠了,不会代码且没有大量实践,高级性能速成是不可能的,独立承担完成性能项目对测试要求不是一般的高,so,认清现实很重要,坚持一步一步提升,终将成为项目性能的“老中医”

哪怕非性能测试,对代码要求也不低。

 

总结

代码和实践非常重要!!!

代码都看不懂,谈什么高级性能分析调优?顶多就是个只会监控、调性能计数器的初中级性能测试

突然想起一句某大师说的:你不懂代码,怎么能发现开发的问题?这里的问题是代码的问题,而不是我们平时功能测试看到的表象,我觉得:这是对测试的最高要求了,总之代码是趋势,哪怕是后面转岗互联网其它岗位也是有优势的,早做准备吧,僧多肉少的职场

不实践,就像古人说的:纸上得来终觉浅,绝知此事要躬行

 

最后,送上一份最近整理的linux性能监控分析思维导图

(下方加微信可获取最新版)

领取性能资料可加小编微信

暗号(666)

最后本人会赠送一套Python学习精品视频,识别下方二维码,回复Python领取

关注后台回复 Python 领取

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值