Architecture auto-cicatrisante à base de microservices

par Yuwei Wang

Projet de thèse en Informatique

Sous la direction de Sophie Chabridon, Denis Conan et de Kavoos Bojnourdi.

Thèses en préparation à Paris Saclay , dans le cadre de École doctorale Sciences et technologies de l'information et de la communication (Orsay, Essonne ; 2015-....) , en partenariat avec Télécom SudParis (France) (laboratoire) , ACMES (equipe de recherche) et de Institut national des télécommunications (Evry) (établissement de préparation de la thèse) depuis le 01-03-2019 .


  • Résumé

    Certaines applications d'entreprise s'avèrent laborieuses à maintenir et à faire évoluer. Cela constitue une dette technologique qui est une difficulté majeure que rencontrent de nombreuses entreprises et qui nécessite de nouvelles approches de construction des architectures logicielles. La piste envisagée dans cette thèse est l'utilisation des architectures à base de microservices car elles permettent de concevoir, développer et déployer des applications fortement réparties et évolutives. Ces applications sont constituées de services indépendants les uns des autres tout en étant complémentaires, utlisant parfois des technologies hétérogènes mais interopérables. Cette approche et ces architectures se distinguent des architectures SOA (Service-Oriented Architectures) qui sont largement répandues dans les entreprises depuis les années 2000 en ce sens qu'elles ne dépendent pas d'une solution d'éditeurs logiciels telle que les ESB (Enterprise Service Bus). Ceci permet de s'affranchir des besoins d'intégration logicielle et constitue donc une alternative aux fonctionnalités classiques de médiation et d'orchestration de services. Les objectifs de cette thèse sont de proposer une architecture permettant l'auto-cicatrisation des systèmes à base de microservices et la gestion de l'obsolescence : - en permettant la mise à jour automatisée des services sans impacter les services qui en dépendent, - en mettant en œuvre la migration de microservices en cas de défaillance d'une partie des infrastructures, - en rendant les systèmes plus résistants à la défaillance d'un ou plusieurs services, - en tenant compte de la charge et du trafic pour la sélection et le routage des flux.

  • Titre traduit

    Self-healing microservices architecture


  • Résumé

    Some enterprise applications are laborious to maintain and evolve. This constitutes a technological debt which is a major difficulty that many companies face and which requires new approaches to building software architectures. The research track considered in this thesis is the use of architectures based on microservices because they enable the design, development and deployment of highly distributed and scalable applications. These applications consist of services independent of each other while being complementary, sometimes using heterogeneous but interoperable technologies. This approach and these architectures are distinguished from SOA architectures (Service-Oriented Architectures) which have been widespread in companies since the 2000s in the sense that they do not depend on a software publisher solution such as ESB (Enterprise Service Bus). This allows to get rid of software integration needs and is therefore an alternative to the classical mediation and service orchestration functionalities. The objectives of this thesis are to propose an architecture allowing the self-healing of systems based on microservices and the management of obsolescence: - by enabling the automatic update of services without impacting the services that depend on them, - by implementing microservice migration in case of failure of part of the infrastructures, - by making the systems more resistant to the failure of one or more services, - by taking into account the load and the traffic for the selection and routing of flows.