系统性能调优

性能测试分析人员经过对结果的分析以后,有可能提出系统存在性能瓶颈。这时相关开发人员、数据库管理员、系统管理员、网络管理员等就需要根据性能测试分析人员提出的意见同性能分析人员共同分析确定更细节的内容,相关人员对系统进行调整以后,性能测试人员继续进行第二轮、第三轮……的测试,与以前的测试结果进行对比,从而确定经过调整以后系统的性能是否有提升。有一点需要提醒大家,就是在进行性能调整的时候,最好一次只调整一项内容或者一类内容,避免一次调整多项内容而引起性能提高却不知道是由于调整那项关键指标而改善性能的。那么在进行系统的调优过程中是否有什么好的策略来知道我们工作呢?经过多年的工作,作者的经验是按照由易到难的顺序对系统性能进行调优。
系统调优由易到难的先后顺序如下:
1.        硬件问题
2.        网络问题
3.        应用服务器、数据库等配置问题
4.        源代码、数据库脚本问题
5.        系统构架问题

硬件发生问题是最显而易见的,如果CPU不能满足复杂的数学逻辑运算,可以考虑更换CPU,如果硬盘容量很小,承受不了很多的数据可以考虑更换高速、大容量硬盘等。如果网络带宽不够,可以考虑对网络进行升级和改造,将网络更换成高速网络;还可以将系统应用与平时公司日常应用进行隔离等方式,达到提高网络传输速率的目的。很多情况下,系统性能不是十分理想的一个重要原因就是没有对应用服务器、数据库等软件进行调优和设置引起来的,如:Tomcat调整堆内存和扩展内存的大小,数据库引入连接池技术等。源代码、数据库脚本在上述调整无效的情况下,您可以选择的一种调优方式,但是由于设计到对源代码的改变有可能会引入缺陷,所以在调优以后,不仅需要对性能的测试还要对功能进行验证,是否正确。这种方式需要通过对数据库建立适当的索引,以及运用简单的语句替代复杂的语句,从而达到提高SQL语句运行效率的作用,还可以在编码过程中选择好的算法,减少响应时间,引入缓存等技术。最后,在上述尝试都不见效的情况下,您就需要考虑现行的构架是否合适,选择效率高的构架,但由于构架的改动比较大,所以您应该慎重对待。