性能常见的失败情况

不能在期限内完成

  在制作应用程序的过程中第一次执行性能测试时,这是种比较常见的模式,即使你期待着在系统测试阶段仪式性地做以下性能测试,然后就这样告一段落,也还是有可能发生诸多状况,比如执行完性能测试后性能完全达不到要求,或者发生了意外之外的性能方面的故障,于是被迫解析、调优、重新进行测试,甚至有些情况下需要重新设计等,致使原本已经临近的发布日期延迟。

  像这样,之所以后期工程中隐藏这性能问题,原因有如下几点。

  1)只有在生产环境中才会发现

  2)问题的显现需要很多条件(环境、数据、负载生成)

  3)因为特定的操作才导致发生性能问题

  基于以上原因,我一般会告诉客户至少为系统测试中的性能测试留出1个月的时间。我认为,即使是认真地进行了准备、规划的项目,也需要这么久的时间。虽说在项目中收尾阶段很难保证这样长的时间来做性能测试,但如果不事先确保这么久的时间,非但不能完成完整的性能测试,更有可能因为没有达到预期的性能目标而被迫修改日程等,对自己的业务产生不良影响。

 

性能很差!解决不了性能问题

  如果执行性能测试后发生了性能问题,那该怎么办呢?首先,调查导致性能变差的原因。虽说如此,但可以怀疑的地方却有很多。比如网络、负载均衡器、Web服务器、AP服务器、开发应用程序的方式、数据库、存储、与其他系统有数据关联的部分、数据大小、SQL等。

  为了详细调查这些因素,需要各个模块的专业知识。此外,对横跨多个领域的性能问题进行排查的时候,如果不能综合多个领域来考虑,负责人就只会一直说“我负责的那部分没有问题”,导致问题无法解决。此外,即使汇集了有专业知识的员工及体制,若没有采用正确的验证和分析方法,非但会使效率变差,有时甚至会让调查朝着错误的方向进行,最终也就找不到答案了。于是,我们就会陷入这样一种状态:虽然知道性能很差,但却无法查明原因,问题始终得不到解决。

  特别是最近几年Web系统中,模块的层级愈加复杂,问题越来越难排查,需要的专业知识范围越来越广,于是我们就越来越容易陷入这种状态。

猜你喜欢

转载自www.cnblogs.com/jiaoyang77/p/9219347.html