性能测试难点之瓶颈分析【转】

来源:互联网 发布:海岛奇兵数据 编辑:程序博客网 时间:2024/04/27 14:20

性能测试的目标是评价系统当前性能;寻找瓶颈,优化性能;预测系统未来的性能,可扩展性;

如何定位与分析系统瓶颈,是性能测试中比较难的一点,下面,我们一起来学习一下这方面的知识吧:

性能测试瓶颈分析的关键步骤:
步骤一:性能测试与数据收集;
步骤二:性能瓶颈分析;
步骤三:性能调优解决方案。

步骤一:性能测试与数据收集;
数据收集,需要收集那些内容呢,下面来列一下关键点:
1、客户端性能指标:并发用户数、事务响应时间、每分钟事务数;
2、非客户端性能指标:服务器资源、网络资源:
  a、操作系统:如:WINDOWS、UNIX
  b、数据库服务器:如:Oracle、SQLServer、DB2、Sybase
  c、中间件服务器:如:WebSphere、Weblogic
  d、网络:带宽利用率、延迟、丢包、传输错误等

步骤二:性能瓶颈分析
性能瓶颈分析的关键点包括:
1、响应时间;
2、并发用户数;
3、吞吐量;
4、CPU;
5、内存和高速缓存;
6、磁盘(I/O)
7、中件间服务器性能;
8、数据库服务器性能等。

从以下分析角度来分析性能瓶颈:
1、客户端、网络、服务器;
2、硬件、软件;
3、应用软件、Web服务器、数据库服务器。

通过下图,可以很好帮助我们去分析性能瓶颈;

下面对数据库的瓶颈分析做个示例:
1、首先得到数据库系统中每一条SQL语句在数据库中执行的平均时间;
2、然后将效率低下并且频繁调用的SQL语句的执行时间划分为以下部分:解析时间、执行时间、读取时间和其他时间;
3、优化SQL。

步骤三:性能调优解决方案;
1、硬件平台:服务器CPU、内存以及硬盘等;
2、网络平台:负载、延迟、传输故障等等;
3、软件平台:数据库、中间件;
4、应用级别:线程(进程)级别、会话级别、代码级别;

下面对数据库调优举个例子:
1、数据库实例优化
 a、library cahce 的优化;
 b、数据字典高速缓存的优化;
 c、数据高速缓存的优化;
 d、回滚段的优化;
 e、重做日志文件的优化;
 f、排序区的优化;
 g、数据库IO的优化;
 h、数据库碎片的优化;
2、数据库事件响应时间分析
 a、等待事件分析;
 b、会话级别的事件响应时间分析;
 c、数据库实例的响应时间分析;
3、数据库锁管理
4、SQL语句的优化。

URL:http://www.po-soft.com/blog/zhanghaihong/390.html

原创粉丝点击