最近用loadrunner对开发的系统进行了压力测试,考察系统的性能,是否可以应对客户的需要,并通过jconsole监控应用系统的各项技术指标数据,进面对系统参数进行了优化。
1、 对Web应用服务器端的性能监视可以使用JDK5版以后自带的监控软件JConsole,可以满足简单的性能监控需要,我的服务端的环境为window + jdk 6 + tomcat 6 + mysql,为了能够监控Tomcat服务器的运行性能,需要在批处理文件catalina.bat中加入以下设置:
set JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port="9004" -Dcom.sun.management.jmxremote.authenticate="false" -Dcom.sun.management.jmxremote.ssl="false"
2、Tomcat服务器启动以后,然后启动JConsole,就新建连接中的本地进程中的tomcat的启动进程,选择后点连接按钮:
3、 LoadRunner的设置可以查看我的另一文章:通过压力测试排查Bug(一)--测试过程
4、一个测试实例,以下是LoadRunner的测试图示与对应的服务端性能监控图示:
5、通过监控服务器信息,进行了系统参数的优化:
首先优化了Java VM参数:
JAVA_OPTS=-server -Xms150m -Xmx220m -Xss128k -XX:MaxNewSize=256m -XX:PermSize=64M -XX:MaxPermSize=256m
原来设置为"-Xms512m -Xmx768m",现在看来没有必要设置如此之高,如上设置即可,同时垃圾回收更及时了。
再就是优化了Tomcat的线程池启设置,配置在server.xml文件中,对以下几个参数进行具体的调整:
maxThreads:Tomcat可创建的最大线程数;
acceptCount:如果当前可用线程数为0,则将请求放入处理队列中。这个值限定了请求队列的大小,超过这个数值的请求将不予处理。
connectionTimeout:网络连接超时数,单位毫秒。
minSpareThreads:如果当前没有空闲线程,且没有超过maxThreads,一次性创建的空闲线程数量。Tomcat初始化时创建的线程数量也由此值设置。
maxSpareThreads:一旦创建的线程超过此数值,Tomcat会关闭不再需要的线程。
线程数可以大致上用 “同时在线人数*每秒用户操作次数*系统平均操作时间” 来计算。
具体设置如下:
<Connector port="80" maxThreads="256" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8"/>
- 描述: JConsole启动后连接到tomcat
- 大小: 30.1 KB
- 描述: LoadRunner的测试图示
- 大小: 125.9 KB
- 描述: 服务端性能监控图示
- 大小: 110.6 KB
分享到:
相关推荐
负载测试是用于测试软件系统在正常负载下的性能,压力测试是用于测试软件系统在高负载下的性能,强度测试是用于测试软件系统在极端情况下的性能, 可扩展性测试是用于测试软件系统的可扩展性。 3. 性能测试阶段 ...
【系统调优性能测试报告】 本报告主要针对XX系统的个人系统优化项目进行压力测试,旨在评估和提升系统在登录和理财交易处理上的性能,确保满足客户需求。报告详细记录了测试的目标、过程、环境以及测试结果,以便为...
"性能测试分析与调优指南" 性能测试是一种广泛应用于软件开发、测试和运维中的重要技术手段,旨在评估和改进软件系统的性能,以满足用户对系统响应时间、吞吐量和可靠性的需求。在该指南中,我们将详细介绍性能测试...
例如,负载测试关注系统在特定负载下的表现,压力测试则着重于确定系统的极限性能,而容量测试则测试系统所能支持的最大用户数或数据量。 性能调优是性能测试的延续,其目标是通过调整软件和硬件的配置,提升系统的...
《Web系统效率和性能测试的计划与实施——系统调优方法研究》这篇毕业论文深入探讨了Web系统性能测试的关键方面,旨在通过系统调优提升Web应用的效率和性能。论文内容涵盖性能测试的基础、LoadRunner工具介绍、测试...
【性能测试项目实施经验总结与系统调优方法1】 在性能测试中,为了确保测试的准确性和效率,往往需要对实际系统进行一定的调整。以下是从标题、描述和标签中提炼出的关键知识点: 1. **去除安全验证**: - 在进行...
WebLogic 压力测试调优指南 本文将对 WebLogic 压力测试调优进行详细的介绍,包括 Oracle 数据库设置、Jar 包设置、WebLogic 设置、JDBC ...通过以上设置,可以实现 WebLogic 压力测试调优,提高系统性能和稳定性。
性能测试可以分为多种类型,包括负载测试、压力测试、强度测试、可扩展性测试等。不同的测试类型都有其特定的测试目标和测试方法。 3. 性能测试阶段 性能测试可以分为多个阶段,包括测试计划、测试环境搭建、测试...
5. **调优与迭代**: - 根据分析结果调整系统配置。 - 重复测试直到达到期望的性能水平。 #### 六、性能调优技巧 1. **优化代码**: - 使用更高效的算法。 - 减少不必要的计算。 2. **数据库调优**: - 优化...
- **压力测试**:超出正常工作负荷,观察系统在极限条件下的表现。 - **耐久测试**:长时间运行,检查系统稳定性和资源消耗。 - **峰值测试**:模拟短暂但极端的高负荷,测试系统的应对能力。 3. **性能测试工具...
### 《软件性能测试、分析...通过以上详细的分析与实践,本书不仅提供了全面的理论知识,还结合了大量的实际案例,帮助读者深入理解软件性能测试与调优的核心概念和方法论,为提高软件系统的稳定性和效率提供有力支持。
“全链路压测(13):高可用和性能优化”文档可能详细阐述了如何进行全链路压力测试,这是容量测试的一种形式,通过模拟真实的用户行为,对整个系统的所有环节进行压力施加,以检查其在极限条件下的表现。高可用性是...