软件测试--系统性能分析

测试开发----系统性能分析

系统工作负载性能因素

物理方面

处理器速度

内存容量

网路或磁盘I/O控制器数量

磁盘容量及速度

软件方面

应用程序自身的性能特征、工作负荷特征

应用程序之间的通信行为

磁盘或网络上数据访问模式

终端用户对应用程序的使用模型

对特定工作符合调优时常常先假定物理环境的特征不变。

性能分析主要目标

识别出工作负荷中哪些是提高性能和整体吞吐率的瓶颈,以及当工作负荷已导致硬件能力饱和时,哪些硬件配置改进会提高该工作负荷吞吐率及性能

分析信息项

1.整体CPU利用率

2.内存利用率

3.磁盘I/O利用率和延迟

4.网络利用率

CPU因素分析

前提:先了解系统处理器的情况,例如逻辑处理器、处理器型号、主频率、cache大小、是否支持超线程等

当CPU满载时,需要结合系统的附带监控分析工具,检查相关系统日志,web服务器应用日志,DB日志等,结合辅助命令来分析CPU为什么会被完全占用,以及后续优化方案等。

内存因素分析

要点

可用内存过小,进程会被阻塞,应用运行缓慢或失去响应,甚至可能触发系统的OOM(内存溢出)从而引起应用程序被系统杀死,更严重可能导致系统重启;

可用内存过大,也是对资源的浪费,可考虑做一些缓存服务器来提升性能

32位系统和64位系统的寻址问题

32位系统寻址范围有限,会导致系统实际使用内存没有预期这么“大”,而64位系统没有这个问题

虚拟内存

当系统物理内存不够用时,需要将物理内存中一部分释放以供当前运行的程序使用,而被释放掉的空间一般来自长时间误操作的应用,这些释放的空间被临时地存放在虚拟内存空间中,当这些程序需要运行时,再从虚拟内存中恢复保存的数据到物理内存。

在做性能分析的时候需要考虑虚拟内存情况

网络因素分析

要点

网络带宽、响应时间、网络延迟、阻塞等

需要考虑网络是否可达,防火墙是否开启,端口访问,带宽限制,路由寻址,网络时延等问题

I/O因素分析

I/O读写性能会直接影响程序性能,若I/O读写频繁时,其得不到满足会导致应用阻塞,需要考虑I/O的TPS,平均I/O数据,平均队列长度,平均服务时间,平均等待时间,I/O利用率

总结

因素常常相互依赖,任何一个因素的高负载都会使其他资源受到影响。

1.大量网络吞吐量会导致占用CPU资源增大,系统此时需分出资源来进行软件中断处理

2.大量CPU开销会尝试更多内存应用

3.在进行系统优化时,关键在于找到真正的瓶颈所在

瓶颈阈值分析思维

1.CPU定位分析

image

2.内存定位分析

image

3.网络定位分析

image

4.I/O定位分析

image

posted @ 2022-04-01 23:14  ShadowMurloc  阅读(593)  评论(0编辑  收藏  举报