随着服务群体、服务规模的与日俱增,我们面对的应用场景、业务规则、数据规则也越来越多样化、复杂化,为了应对这种日益增长的变化以更好的满足客户需求,各类新方法、新技术也应运而生,并以此构建了大量的新产品。在这样的背景下,如何实现项目有效、高效的交付,如何为我们的客户提供便捷、高效、稳定产品服务?面对这些问题,性能测试通过对系统性能的全面分析,寻找瓶颈,验证系统性能是否符合应用需求,验证系统的性能指标是否满足使用要求,从而不断提升产品质量、优化产品服务。
在应用系统使用的过程中,难以预知的用户负载和愈来愈复杂的应用环境使得客户时时担心会发生用户响应速度过慢,系统崩溃等问题。而软件环境变量参数设置的合理性、SQL质量的高低、硬件资源的配置情况是影响系统有效、高效运行的关键性因素。通过完整的性能测试过程(图 1),模拟实际用户的操作行为和实行实时性能监测,发现系统问题,通过分析对系统各方面进行调优,不断调整环境变量参数使其更合理化、优化SQL质量、优化系统架构。
图 1 性能测试过程
- 合理设置参数:一般情况下,对于一些常用参数的设置通常都是默认的,如JVM参数的一般是50% 。对于应用系统,在不同的需求下有不同的要求,尤其是对并发量要求高的时候,必须对参数进行优化,以保障系统的高效、快速、平稳运行。
- 优化SQL质量:数据量倍增的时候,如果SQL的可读性、逻辑性交叉,很容易引发严重的性能问题。通过性能优化,准确定位到低质量的SQL语句,针对性的对语句进行调优。
- 优化系统架构:随着系统用户和数据量的不断增长,不可避免的会面对硬件资源不足或者分配不合理的问题。通过性能优化可以快速定位硬件资源的瓶颈,通过横向增加出现瓶颈组件的节点数量或者纵向提升硬件配置以满足系统需求,避免因为资源问题造成应用系统在用户使用过程中出现的卡慢等影响体验的现象。
系统的运行速度和稳定性,体现出一个企业产品的质量。为了能够真正发挥投入巨大的产业价值级别的系统的优势,性能的优化提升是不可或缺的重要环节。通过性能优化,产品得到的提升,就是性能优化的意义所在。