• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

软件性能测试重要性的下滑将改变工作重心

发布: 2009-3-19 10:22 | 作者: 不详 | 来源: 测试时代采编 | 查看: 44次 | 进入软件测试论坛讨论

领测软件测试网

可扩充性测量应用程序所能扩张的程度。一旦决定了最大处理能力,下一步就要决定:在环境发生变化的情况下,处理能力可进行多大程序的扩展。可扩充性与瓶颈直接相关。瓶颈是已达到最大处理能力的系统的一部分,它制约系统达到更好的性能。在直接与瓶颈相关时,可扩充性选项一般十分有效。瓶颈一般分为以下几类:处理器、内存、磁盘或网络速度。

  为了获得有效的可扩充性,你首先必须鉴别限制处理能力的瓶颈,并着手消除此瓶颈。例如,如果瓶颈为处理器,就要进行试验来评估增加其它处理器的效果。虽然很少有人期望资源成倍增长,处理能力也成倍增长,但如果不存在其它瓶颈,处理能力增加80%应该是合理的。

  只有当瓶颈限制系统的性能时,它们才会变得明显起来。如果处理器限制了系统的处理能力,就很难觉察到其实所安装的内存也只能支持另外10%的业务处理能力。实际情况是,发现一个瓶颈并不一定能完成鉴别可扩充性选项的目的。一般来说,我们有必要真实展示提议的可扩充性选项的性能,以证明取得的实际改善。

  这就是性能测试的主要矛盾之处。要正确进行性能测试,你得需要你所测试的硬件,在那种情况下,你实际已经购买了它。

   评估性能

  如今,大多数的应用程序并不需要超出一台单独系统处理能力的性能。例如,微软估计,一台运行ISA的双处理器2.4GHz英特尔奔4服务器每秒能够对30至42兆的SSL流量进行加密。假如大多数机构连接互联网所使用的只是每秒1.544兆的标准T1(D1,如果你喜欢)线路,那么系统处理能力与平均需求之间就存在巨大的差距。然而,多数机构只专注于让计算机执行SSL加密与其它一些大家熟知的困难任务,很少有人意识到系统处理能力与他们所讨论的工作负载之间的差距。 

  讨论主要集中于一种或一组要消耗更多时间的技巧。例如,在.NET中应用反射(reflection)来处理对象比直接调用对象要花费更多的时间。(反射是在运行时间访问元数据的一种机制。)这是事实。但是,尽管反射要比直接调用方法多花几倍的时间,它仍然没有触及许多应用程序的有效处理时间的表层。

  同样,由于要耗费大量的处理器能力,我们也放弃了处理异常的包装与重扔(wrap and rethrow)方法。因为要经过很长时间才能找到合适的处理器,一般来说异常处理十分昂贵。针对直接由错误引起的底层异常,包装与重扔(wrap and rethrow)技巧可能会潜在产生一些或更多异常。对处理器来说,这可能要比单独的异常要昂贵数百倍。但是,这种认识忽略了这样一个事实:即异常其实(或至少应该)极少发生,而且通过包装与重扔(wrap and rethrow)技巧获得的信息对解决问题相当有益。

  另一个提到性能,且性能在这里有一定价值的地方是存储过程(微软SQL服务器数据库中)。一些机构要求为每个表格访问建立存储过程,但并不是因为存储过程所带来的安全利益,而是专注于它所获得的性能改善。然而,在大多数情况下,应用存储过程对性能并没有多大的改善。此过程中省略的部分(编辑与查询优化)在SQL中十分高效,因此用不了多少时间。

  针对改善许多中型与大型机构的系统性能的应用程序不在少数。但意识到性能的重要性,因而浪费资源,反而会造成性能问题。这些情况大多与编写可靠的代码有关,而不在于应用哪种技巧。

   低廉的硬件

  有可能进行性能测试并将其做好吗?一般来说,性能测试昂贵、麻烦而又费时,而且很少会产生投资回报。对大多数机构来说,要提高性能,增加更大的内存、添置另一台处理器或服务器可能是更为方便低廉的方式。

  同样,如果集中于影响总体性能(应用)的次要项目,我们可能会错误地以设计理念为中心,花费了大量的开发时间,但性能却没有多大改善。硬件也不贵,那就应用它吧!说这样的话真是让人痛苦!

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

22/2<12

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网