Component technologies, such as J2EE and .NET have been extensively adopted for building complex enterprise applications. These technologies help address complex functionality and flexibility problems and reduce development and maintenance costs. Nonetheless, current component technologies provide little support for predicting and controlling the emerging performance of software systems that are assembled from distinct components.ududStatic component testing and tuning procedures provide insufficient performance guarantees for components deployed and run in diverse assemblies, under unpredictable workloads and on different platforms. Often, there is no single component implementation or deployment configuration that can yield optimal performance in all possible conditions under which a component may run. Manually optimising and adapting complex applications to changes in their running environment is a costly and error-prone management task.ududThe thesis presents a solution for automatically optimising the performance of component-based enterprise systems. The proposed approach is based on the alternate usage of multiple component variants with equivalent functional characteristics, each one optimized for a different execution environment. A management framework automatically administers the available redundant variants and adapts the system to external changes. The framework uses runtime monitoring data to detect performance anomalies and significant variations in the application's execution environment. It automatically adapts the application so as to use the optimal component configuration under the current running conditions. An automatic clustering mechanism analyses monitoring data and infers information on the components' performance characteristics. System administrators use decision policies to state high-level performance goals and configure system management processes.ududA framework prototype has been implemented and tested for automatically managing a J2EE application. Obtained results prove the framework's capability to successfully manage a software system without human intervention. The management overhead induced during normal system execution and through management operations indicate the framework's feasibility.ud
展开▼
机译:诸如J2EE和.NET之类的组件技术已被广泛用于构建复杂的企业应用程序。这些技术有助于解决复杂的功能和灵活性问题,并降低开发和维护成本。但是,当前的组件技术几乎无法为预测和控制由不同组件组装而成的软件系统的新兴性能提供支持。在不同的平台上。通常,没有单个组件的实现或部署配置可以在组件可能运行的所有可能条件下产生最佳性能。手动优化复杂的应用程序并使之适应运行环境的变化是一项昂贵且容易出错的管理任务。 ud ud本文提出了一种自动优化基于组件的企业系统性能的解决方案。所提出的方法基于具有等效功能特征的多个组件变体的交替使用,每个变体针对不同的执行环境进行了优化。管理框架会自动管理可用的冗余变体,并使系统适应外部更改。该框架使用运行时监视数据来检测性能异常和应用程序执行环境中的重大变化。它会自动调整应用程序,以便在当前运行条件下使用最佳组件配置。自动聚类机制分析监视数据并推断有关组件性能特征的信息。系统管理员使用决策策略来陈述高级性能目标并配置系统管理流程。 ud ud已经实现并测试了框架原型,用于自动管理J2EE应用程序。获得的结果证明了该框架无需人工干预即可成功管理软件系统的能力。在正常系统执行过程中以及通过管理操作引起的管理开销表明了该框架的可行性。 ud
展开▼