Return to search

Extension of the behavior composition framework in presence of failures using recovery techniques and AKKA

Abstract: Fault tolerance is an essential property to be satis ed in the composition of services,
but reaching a high level of fault tolerance remains a challenge. In the area
of ubiquitous computing, the composition of services is inevitable when a request
cannot be carried out by a single service, but by a combination of several services.
This thesis studies fault tolerance in the context of a general behavior composition
framework. This approach raises, rst, the problem of the synthesis of controllers
(or compositions) in order to coordinate a set of available services to achieve a new
service, the target service and, second, the exploitation of all compositions to make
the new service fault tolerant. Although a solution has been proposed by the authors
of the behavior composition framework, it is incomplete and has not been evaluated
experimentally or in situ. This thesis brings two contributions to this problem. On
one hand, it considers the case in which the service selected by the controller is temporarily
or permanently unavailable by exploiting recovery techniques to identify a
consistent state of the system from which it may progress using other services or leave
it in a coherent state when none of the available services no longer allows progression.
On the other hand, it evaluates several recovery solutions, each useful in services
malfunction situations, using a case study implemented with the aid of Akka, a tool
that facilitates the development of reactive, concurrent and distributed systems. / La tolérance aux fautes est une propriété indispensable à satisfaire dans la composition de services, mais atteindre un haut de niveau de tolérance aux fautes représente un défi majeur. Dans l'ère de l'informatique ubiquitaire, la composition de services est inévitable lorsqu'une requête ne peut être réalisée par un seul service, mais par la combinaison de plusieurs services. Ce mémoire étudie la tolérance aux fautes dans le contexte d'un cadre général de composition de comportements (behavior composition framework en anglais). Cette approche soulève, tout d'abord, le problème de la synthèse de contrôleurs (ou compositions) de façon à coordonner un ensemble de services disponibles afin de réaliser un nouveau service, le service cible et, ensuite, celui de l'exploitation de l'ensemble des compositions afin de rendre le nouveau service tolérant aux fautes. Bien qu'une solution ait été proposée par les auteurs de ce cadre de composition, elle est incomplète et elle n'a pas été évaluée expérimentalement ou in situ. Ce mémoire apporte deux contributions à ce problème. D'une part, il considère le cas dans lequel le service visé par le contrôleur est temporairement ou définitivement non disponible en exploitant des techniques de reprise afin d'identifier un état cohérent du système à partir duquel il peut progresser en utilisant d'autres services ou de le laisser dans un état cohérent lorsqu'aucun service, parmi ceux disponibles, ne permet plus de progression. D'autre part, il évalue plusieurs solutions de reprise, chacune utile dans des situations particulières de pannes, à l'aide d'une étude de cas implémentée en Akka, un outil qui permet aisément de mettre en oeuvre des systèmes réactifs, concurrents et répartis.

Identiferoai:union.ndltd.org:usherbrooke.ca/oai:savoirs.usherbrooke.ca:11143/11950
Date January 2018
CreatorsHosnidokht, Mohammad
ContributorsSt-Denis, Richard
PublisherUniversité de Sherbrooke
Source SetsUniversité de Sherbrooke
LanguageEnglish
Detected LanguageFrench
TypeMémoire
Rights© Mohammad Hosnidokht

Page generated in 0.0018 seconds