随笔-77  评论-5  文章-2  trackbacks-0

性能测试经验总结
1.要有信心
2.要有稳定,干净的环境,要停掉服务器上不必要的进程和服务

3.要在检查资源是否正常释放了,
内存是否存在泄漏,内存的不断增长,也会影响请求的相应时间
数据库连接是否在使用后得到释放.
可以查看对象的分配状况

要检查查询的时候是将所有的数据查出来了还是只查了一页数据

4.连接池的配置,可以分配足够初始连接,同时配置没有连接时的等待时间,要保证始终是取到连接的
免得测出的是假相.

给出一个配置的例子
 <bean id="dataSource" class="com.zte.platform.db.FolDataSource"
       destroy-method="close">
   <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
 <property name="url" value=""/>
 <property name="username" value=""/>
 <property name="password" value=""/>
   <property name="initialSize" value="50" />
   <property name="maxActive" value="200" />
   <property name="maxWait" value="-1"/>
   <property name="maxIdle" value="100"/>
   <property name="removeAbandoned" value="true"/>
   <property name="removeAbandonedTimeout" value="30000"/>
   <property name="logAbandoned" value="true"/>
 </bean>

5 要用profile工具,判断在多并发情况下,时间的分配状况,抓住主要矛盾,解决最影响性能的地方

6.服务器需要配置好,对内存和线程都需要配置.
    tomcat配置
    <Connector
port="8088"               maxHttpHeaderSize="8192"
               maxThreads="100" minSpareThreads="100" maxSpareThreads="450"
               enableLookups="false" redirectPort="8443" acceptCount="300"
               connectionTimeout="20000" disableUploadTimeout="true" />

内存配置:
这次测试只配置了java vm,  -Xms1024M -Xmx1024M


有人推荐这样配置:
JVM_ARGS= -Xms1408M -Xmx1408M -XX:MaxPermSize=96M -XX:NewSize=500M -XX:MaxNewSize=500M -Xss128k -XX:+UseConcMarkSweepGC -XX:+UseParNewGC


7.测试脚本中不能带session标识,如http://..../app/perftest.jsp;jsessionid=D68FC8BDDB954F33AD2626D67553EC8E
需要去掉 ;jsessionid=D68FC8BDDB954F33AD2626D67553EC8E ,因为带sessionid会导致测试结果是多个线程访问一个用户的会话.
实际应用中是一个用户一个会话一个线程

8 日志分析,分析日志中出现的异常,异常发生的时候,往往性能会降低,也会引发失败事务.

9. 和其他系统集成了,要先和其他系统分开进行测试,达标一个再集成进来,将问题局部化定位.

10.最好调优人员学会使用 loadrunner测试工具,先自己使用loadrunner测试通过再给测试人员,提高效率

 

 


 


文章来源:http://stocknewbie.bokee.com/viewdiary.17160571.html
posted on 2009-05-01 10:52 huohuo 阅读(112) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: