性能测试简单分析(一)

前言:性能测试之后,需要分析性能问题瓶颈所在,最常见的情况,就是服务器cpu或者内存指标过高。但是仅仅是这样,还不够,我们最好可以进一步给研发提供更多的信息,并且最好还能给出自己的一些建议,才会显得测试报告专业。以实际工作中搜索接口为例:分析问题简单思路是用分层思想,分析最大可能是哪一层出现瓶颈,然后再具体分析。这里如果cpu过高,那么,先用top -c,再排序查看下到底是哪个服务占用过高。

一、如果是java层(微服务层)

①那么进一步分析是哪个线程,linux上命令不少,比如这个 (ps -mp pid -o THREAD,tid,time) ps -T -mp pid
②找到了耗时最高的线程,将线程TID转换为16进制格式(printf “%x\n” tid)
③最后使用jstat命令,去打印该线程的堆栈信息(jstack pid |grep tid )
④到了这里,需要做的事情有两件,一是自己尝试阅读信息,看能否发现什么问题,二就是将这段信息提交给对应研发分析

二:如果是c++层(算法层)

①可以用 pstack命令,pstack pid即可。(多使用linux自带命令或者让请研发配合调试)
②配合其他指标,结合分析可能原因,比如用sar,vmstat查看%sy,iostat,cs,wa,平均负载等等常用信息,以上就是最基本的手段,尽可能一步步分析,最后想说的是,cpu和内存的问题,很多时候无法单独判断,需要综合分析,以下就是一点简单的关系总结:
mpstat
1、若 %iowait 的值过高,表示硬盘存在I/O瓶颈
2、若 %idle 的值高但系统响应慢时,有可能是 CPU 等待分配内存,此时应加大内存容量
3、若 %idle 的值持续低于10,则系统的 CPU 处理能力相对较低,表明系统中最需要解决的资源是 CPU 。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值