论文标题

提高公用事业驱动的自我修复的可扩展性和奖励,以实现大型动态架构

Improving Scalability and Reward of Utility-Driven Self-Healing for Large Dynamic Architectures

论文作者

Ghahremani, Sona, Giese, Holger, Vogel, Thomas

论文摘要

自我适应可以通过各种方式实现。如果系统或环境满足某些条件,则基于规则的方法规定要执行的改编。它们会产生可扩展的解决方案,但通常只是满足适应决策。相比之下,公用事业驱动的方法通过使用通常昂贵的优化来确定最佳决策,这通常不会针对大型问题进行扩展。我们提出了一个基于规则和公用事业驱动的适应方案,该方案可实现这两个方向的好处,从而使适应决策是最佳的,而计算量表则避免避免昂贵的优化。我们将此适应方案用于大型软件系统的基于架构的自我修复。为此,我们根据定义自我修复必须解决的问题的模式来定义此类系统的大型动态体系结构的实用性。此外,我们使用基于模式的适应规则来解决这些问题。使用基于模式的方案来定义实用程序和适应规则,使我们能够计算每个规则应用程序对整体实用程序的影响,并实现增量和高效的效用驱动的自我修复。除了正式分析所提出的方案的计算工作和最佳性外,我们还彻底证明了其在奖励中以基于静态规则的方法作为基线和使用约束求解器的实用程序驱动方法的比较实验中的奖励性和最佳性。这些实验基于从现实世界失败日志中得出的不同故障曲线。我们还研究了不同的故障概况特征对评估不同方法鲁棒性的可伸缩性和奖励的影响。

Self-adaptation can be realized in various ways. Rule-based approaches prescribe the adaptation to be executed if the system or environment satisfies certain conditions. They result in scalable solutions but often with merely satisfying adaptation decisions. In contrast, utility-driven approaches determine optimal decisions by using an often costly optimization, which typically does not scale for large problems. We propose a rule-based and utility-driven adaptation scheme that achieves the benefits of both directions such that the adaptation decisions are optimal, whereas the computation scales by avoiding an expensive optimization. We use this adaptation scheme for architecture-based self-healing of large software systems. For this purpose, we define the utility for large dynamic architectures of such systems based on patterns that define issues the self-healing must address. Moreover, we use pattern-based adaptation rules to resolve these issues. Using a pattern-based scheme to define the utility and adaptation rules allows us to compute the impact of each rule application on the overall utility and to realize an incremental and efficient utility-driven self-healing. In addition to formally analyzing the computational effort and optimality of the proposed scheme, we thoroughly demonstrate its scalability and optimality in terms of reward in comparative experiments with a static rule-based approach as a baseline and a utility-driven approach using a constraint solver. These experiments are based on different failure profiles derived from real-world failure logs. We also investigate the impact of different failure profile characteristics on the scalability and reward to evaluate the robustness of the different approaches.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源