一般情况下,测试环境的服务器配置都要比生产环境差很多,特别是系统压力测试的结果,往往会有较大出入,如何在这样的情况下,提高测试结果的真实可信度,预估出系统上线后的运行效率?
1) 将集群环境改为单台服务器,将有限的资源集中供应某一台服务器。
这样,可以测试单台设备的最大吞吐量。如果集群环境中各个服务器之间没有资源共享、资源征用的话,单台设备的最大吞吐量 * 设备数量 就是整个系统能够达到的最大吞吐量。当然,现实中没有这么理想,往往存在网络共用、存储共用,这就要深入分析这些共享因素对性能的影响了。甚至有些集群还有锁机制,比如Oracle RAC,IBM CF,这些有锁机制的集群不太适合单台的测试。
2) 去掉中间环节的服务器,直接压测核心系统。
例如,一个客户请求过来之后,经过F5、Web服务器、应用服务器、数据库这几个系统,而根据经验判断,前面几个系统都不是性能瓶颈。那么,可以把前面的系统摘掉,采用性能测试工具直接压测数据库服务器。
再比如,业务系统的签名通过签名服务器来完成,但我们想知道签名服务器的最大吞吐量,那么,去掉业务系统,直接压测签名服务器。
收起