软件性能测试的问题分析和总结[2]

发表于:2010-01-21来源:作者:点击数: 标签:性能测试软件
软件性能测试的问题分析和总结[2] 性能测试工具 3.冗余字段的优化 select 。。。 from A where 。。。。比如 where 条件查询的字段的长度较大,创建索引效果后不明显,考虑增加了冗余的字段,进行标识,结合在冗余字段上创建索引会比较快。 4.分页算法,遇到

       软件性能测试的问题分析和总结[2]   性能测试工具 

    3.冗余字段的优化

  select 。。。 from A where 。。。。比如 where 条件查询的字段的长度较大,创建索引效果后不明显,考虑增加了冗余的字段,进行标识,结合在冗余字段上创建索引会比较快。

  4.分页算法,遇到的状况也比较混乱。。。。。好的分页算法要推广,公用。

  三、查询结果集过大

  返回全部的数据(建议从业务角度出发,分析返回全部的数据是否必要)

  空查询(默认条件查询)

  不规范的查询(where 1=1)

  1.查询结果集(建议从业务角度优化系统)

  建议参考淘宝的一篇帖子

  http://rdc.taobao.com/blog/dba/html/187_optimize_from_business.html

  2.空查询(默认查询造成压力比较大,其实空查询可能是没有必要的)

  建议页面增加默认过滤条件

  3.Where 1=1

  a、性能上的影响(可能会影响orale的查询计划)

  b、安全性的影响

  create table A tablespace tbs_temp as select * from B where 1<>1   软件测试

  create table A as select * from B where 1<>1

  Sybase不支持这样的语法,但是有:

  select * into A from B where 1 <> 1

  where 1 <> 1 ,复制表的结构,但注意这样没有主键

  4.不规范的查询sql很多,建议多参考部门的相关规范,从规范的角度出发去发现问题。

  四、复杂查询sql (大数据量测试)

  复杂查询sql一定在大数据量下进行测试

  结合操作和sql本身效率进行测试。

  建议多与DBA配合

  如果你只使用小表进行测试(比如小于100条数据),那么在真实数据下会异常缓慢直至停滞。Sql的例子就不列出了,比较多,通常对于多表联合查询,复杂的sql都要在大数据量下测试。其实越复杂的东西越难维护和优化,建议对系统中复杂的sql都记录下来,可能是性能隐患。

  五、数据库连接池

  未使用连接池,应用程序在建立数据库连接上消耗的时间较长,影响性能效率。

  连接池配置参数不当(通过测试确定合适的值)

原文转自:http://www.ltesting.net