gil's pkm2

性能调优

性能调优应用领域主要对应于对系统性能进行调优。一般来说,性能调优活动会和其他

的性能测试应用领域活动交杂在一起。性能调优由于调优的对象众多,而且并不要求在

系统全部完成后才能进行调优(在开发阶段也可针对某个设计或是某种实现方法进行

调优),因此可以在多种不同的测试阶段和场合下使用。

对已部署在实际的生产环境上的应用系统来说,对其进行的性能调优可能会首先关注

应用系统部署环境的调整,例如,对服务器的调整、对数据库参数的调整及对应用服务器

的参数的调整,此时的性能调优需要在生产环境中这个确定的环境下进行;但对正在开发

中的应用来说,性能调优更多的关注逻辑的实现方法,应用中涉及的算法、数据库访问层

的设计等因素,此时并不要求测试环境是实际的生产环境,只要整个调优过程中具有一个

可用于比较的基准测试环境即可。

一个标准的性能调优过程的描述如下:

(1) 确定基准环境,基准负载和基准性能指标

实际的性能调优过程中最常见的错误包括以下几种:

1、 没有保证每次执行时数据库具有相同的数据环境。

2、 对于某些建立在J2EE应用服务器或是dotnet应用服务器上的应用,在应用服务器需要重启的时候,没有注意在测试前首先进行一段时间的“预热”。

大部分的J2EE应用服务器和dotnet应用服务器都使用一种在java中被称为hot-spot

的技术,这种技术允许应用服务器在第一次运行应用的时候将字节码(byte-code)

编译成本地代码(native-code)并执行,这样在后续的执行过程中,应用执行速度会大大加快。但对于应用的第一次运行来说,由于需要增加一个将字节码编译成本地代码的

过程,因此速度会特别慢。

(2) 调整系统运行环境和实现方法,执行测试

对于一个应用来说,包括以下3方面的调整:

1、 硬件环境的调整:主要是对系统运行的硬件环境进行调整,包括改变系统运行

的服务器、主机设备环境(改用具有更高性能的机器,或是调整某些服务器的

物理内存总量,CPU数量等),调整网络环境(更换快速的网络设备,或是采用更

高带宽的组网技术)等。

2、 系统设置的调整:主要是对系统运行的基础平台设置进行调整,例如,根据应用

需要调整UNIX系统的核心参数,调整数据库的内存池大小,调整应用服务器使用

的内存大小,或是采用更高版本的JVM环境等;

3、 应用级别的调整:主要是对应用实现本身进行调整,包括选用新的架构、采用新的

数据访问或是修改业务逻辑的实现方式等。

(3) 记录测试结果,进行分析

posted on 2009-07-22 23:32  gil's pkm2  阅读(231)  评论(0)    收藏  举报

导航