QoC $$^{2}$$ 2 Breaker: intelligent software circuit breakers for fault-tolerant distributed context-aware applications
Reliability is a key concern when distributed context-aware applications assist end-users in intelligent environments. As these adaptive applications are never deployed in isolation, delivering failsafe behavior is a non-trivial challenge. Indeed, they usually operate well in the cool comfort of a l...
Gespeichert in:
Veröffentlicht in: | Journal of reliable intelligent environments 2017-07, Vol.3 (1), p.5-20 |
---|---|
Hauptverfasser: | , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | Reliability is a key concern when distributed context-aware applications assist end-users in intelligent environments. As these adaptive applications are never deployed in isolation, delivering failsafe behavior is a non-trivial challenge. Indeed, they usually operate well in the cool comfort of a lab environment, but may not behave as expected in the real world due to unforeseen circumstances. Furthermore, intelligent environments continuously evolve as end-users install and interconnect new sensors, actuators or other appliances. These observations make it challenging for software engineers to design, develop and deploy context-aware distributed applications that guarantee fault-tolerant behavior under all possible situations. In this work, we advocate a ‘Design for Failure’ approach to build applications that are expected to handle faults gracefully. We use enhanced software circuit breakers for distributed context-aware applications to deliver fault-tolerant intelligent environments. Our QoC 2 Breaker framework specializes circuit breakers with notions of Quality of Context to offer context-aware applications a greater stability and resilience against different types of faults. The evaluation of our framework on a prototypical case study shows that it can mitigate circumstances where isolated or transient errors can cascade into catastrophic failures throughout the whole intelligent environment, and this with a limited performance overhead. |
---|---|
ISSN: | 2199-4668 2199-4676 |
DOI: | 10.1007/s40860-017-0037-y |