首页> 外文学位 >Automated discovery of performance regressions in enterprise applications.
【24h】

Automated discovery of performance regressions in enterprise applications.

机译:在企业应用程序中自动发现性能下降。

获取原文
获取原文并翻译 | 示例

摘要

Performance regression refers to the phenomena where the application performance degrades compared to prior releases. Performance regressions are unwanted side-effects caused by changes to application or its execution environment. Previous research shows that most problems experienced by customers in the field are related to application performance. To reduce the likelihood of performance regressions slipping into production, software vendors must verify the performance of an application before its release. The current practice of performance verification is carried out only at the implementation level through performance tests. In a performance test, service requests with intensity similar to the production environment are pushed to the applications under test; various performance counters (e.g., CPU utilization) are recorded. Analysis of the results of performance verification is both time-consuming and error-prone due to the large volume of collected data, the absence of formal objectives and the subjectivity of performance analysts. Furthermore, since performance verification is done just before release, evaluation of high impact design changes is delayed until the end of the development lifecycle. In this thesis, we seek to improve the effectiveness of performance verification. First, we propose an approach to construct layered simulation models to support performance verification at the design level. Performance analysts can leverage our layered simulation models to evaluate the impact of a proposed design change before any development effort is committed. Second, we present an automated approach to detect performance regressions from results of performance tests conducted on the implementation of an application. Our approach compares the results of new tests against counter correlations extracted from performance testing repositories. Finally, we refine our automated analysis approach with ensemble-learning algorithms to evaluate performance tests conducted in heterogeneous software and hardware environments.
机译:性能退化是指与以前的版本相比,应用程序性能下降的现象。性能下降是由于应用程序或其执行环境的更改而引起的不良副作用。先前的研究表明,客户在该领域遇到的大多数问题都与应用程序性能有关。为了降低性能下降进入生产的可能性,软件供应商必须在发布应用程序之前验证其性能。当前的性能验证实践仅通过性能测试在实现级别上进行。在性能测试中,强度类似于生产环境的服务请求被推送到被测试的应用程序。记录各种性能计数器(例如CPU利用率)。由于收集的数据量大,缺乏正式目标以及绩效分析师的主观性,对绩效验证结果进行的分析既耗时又容易出错。此外,由于性能验证是在发布前完成的,因此对高影响力设计变更的评估会延迟到开发生命周期的结尾。在本文中,我们试图提高绩效验证的有效性。首先,我们提出一种构建分层仿真模型的方法,以支持设计级别的性能验证。性能分析师可以利用我们的分层仿真模型来评估提议的设计变更的影响,然后再进行任何开发工作。其次,我们提出了一种自动方法,用于根据对应用程序的实施进行的性能测试结果来检测性能下降。我们的方法将新测试的结果与从性能测试存储库中提取的计数器相关性进行比较。最后,我们使用集成学习算法完善我们的自动化分析方法,以评估在异构软件和硬件环境中进行的性能测试。

著录项

  • 作者

    Foo, King Chun.;

  • 作者单位

    Queen's University (Canada).;

  • 授予单位 Queen's University (Canada).;
  • 学科 Computer Science.
  • 学位 M.A.Sc.
  • 年度 2011
  • 页码 115 p.
  • 总页数 115
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类
  • 关键词

  • 入库时间 2022-08-17 11:45:20

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号