性能如何通过分析后台资源确定瓶颈之CPU内存

确定瓶颈之CPU、内存

影响性能的因素

CPU  内存 网络  硬件 i/o  中间件  应用服务器  数据库

性能如何通过分析后台资源确定瓶颈之CPU内存_第1张图片

性能如何通过分析后台资源确定瓶颈之CPU内存_第2张图片

 家门口的路比较拥堵:解决方案---多来几条路/加宽路/修地铁/修个桥、修整路面、找交警指挥交通/红绿灯、限行、分散周围居民、收费、其他路段的问题

CPU--中央处理器--中央处理单元

%processor time(处理器时间),指系统执行非空闲时间百分百比。

处理时间的阈值(正常范围),对于CPU利用率,每个公司要求不一,一般平均不超过90%是正常,如果其平均值持续超过90%,则怀疑是处理器CPU瓶颈,表示此测试的负载对于目前的硬件过于沉重。

性能如何通过分析后台资源确定瓶颈之CPU内存_第3张图片

 processor queue length(Processor队列长度):处理器中暂时无法处理的线程就成队列,排队等待的线程的个数就称为队列长度。

队列不超过n+1,如果处理器列队中总是有n+1以上的线程通常表示处理器堵塞。

n表示逻辑CPU的个数

判断CPU是否是程序的瓶颈

CPU使用率持续过高,队列长度过长:超过N+1  CPU存在问题:解决方案:增加CPU

性能如何通过分析后台资源确定瓶颈之CPU内存_第4张图片

 第一条线是虚拟用户,第二条线是CPU,当虚拟用户不再增加, CPU使用率还在持续增减,存在问题

性能如何通过分析后台资源确定瓶颈之CPU内存_第5张图片

 如果有多个CPU,按1展开,再按1收起   有问题,但问题不大

Id表示空闲的CPU,CPU使用率85%

性能如何通过分析后台资源确定瓶颈之CPU内存_第6张图片

内存

available mbytes指当前系统的可用内存(单位M),至少要有10%物理内存。

如何查看内存:  windows:计算机---右键--属性

Linux:df  -m   /  free    top   

性能如何通过分析后台资源确定瓶颈之CPU内存_第7张图片

 Pages fault/sec 处理器每秒处理的错误页数,包括软错误(小错误)和硬错误(大错误)。

内存泄漏

程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。

在长时间的性能测试中,如果用户数一直不变,CPU使用率一直平稳,可用内存在逐步减少,考虑是否发生内存泄漏。

----使用过的内存没有及时释放/被回收 gc:垃圾回收

判读是否发生了内存泄漏

在长时间的性能测试中,如果用户数一直不变,CPU使用率一直平稳,可用内存在逐步减少,如果发生的内存泄漏,

process\private bytes计数器的值会 升高↑

process\working set计数器的值会 升高 ↑

memory\available bytes的值会  降低↓

如下图没有发生内存泄漏

性能如何通过分析后台资源确定瓶颈之CPU内存_第8张图片

 该图存在内存泄漏


 以下是我收集到的比较好的学习教程资源,虽然不是什么很值钱的东西,如果你刚好需要,可以评论区,留言【777】直接拿走就好了

各位想获取资料的朋友请点赞 + 评论 + 收藏,三连!

三连之后我会在评论区挨个私信发给你们~

你可能感兴趣的:(软件测试,性能测试,程序人生,软件测试,软件测试工程师,性能测试,职业发展)