0% ont trouvé ce document utile (0 vote)
638 vues44 pages

Architecture Micro Services

Transféré par

jyq88vc4k4
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PPTX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
638 vues44 pages

Architecture Micro Services

Transféré par

jyq88vc4k4
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PPTX, PDF, TXT ou lisez en ligne sur Scribd

Institut Africain

d’informatique,
Représentation du TOGO
(IAI-TOGO)

THEME : ARCHITECTURE ET
MICROSERVICE
Cours : Introduction au Génie Logiciel

Membres du Groupe : Chargé du cours :


BOCCO Imelda M. SANI Koffi
KOUTA Gédéon
NYAMEDZOSE David

Année Académique : 2022-2023


• Introduction

• Qu'est-ce que l'architecture


microservice ?

Sommaire: • A quoi sert le


microservice ?
• Comment utiliser au mieux
les microservices ?

• Conclusion
INTRODUCTION
Introduction

 Par le passé, l’industrie informatique utilisait


des solutions monolithiques ou basées sur
l’architecture orientée services (ou SOA pour
Service-Oriented Architecture) comme
standard. Cependant, le manque d’évolutivité
dynamique de ce genre de système
architectural n’était plus adapté à la
complexité croissante des infrastructures
actuelles. C’est là qu’intervient le microservice
Introduction
I. Qu'est-ce que l'architecture microservice
Qu'est-ce que l'architecture microservice

 Les microservices sont un


style d’architecture utilisé
MICROSERVICES
par de nombreuses
organisations pour le
développement de logiciels.
Ils sont une évolution SOA
logique du système SOA
conçu pour atteindre un
degré élevé d’agilité, de
distribution rapide et
d’évolutivité.
Qu'est-ce que l'architecture microservice
 Il existe un certain nombre « LE STYLE
de définitions des ARCHITECTURAL DES
microservices. La plus MICROSERVICES EST
UNE APPROCHE
commune et généralisée
PERMETTANT DE
reste celle de Martin Fowler DÉVELOPPER UNE
qui dit : APPLICATION UNIQUE
Concrètement, les SOUS LA FORME D’UNE
microservices sont une SUITE LOGICIELLE
méthode développement INTÉGRANT PLUSIEURS
logiciel utilisée pour concevoir SERVICES. CES
SERVICES SONT
une application comme un
CONSTRUITS AUTOUR
ensemble de services DES CAPACITÉS DE
modulaires. Chaque module L’ENTREPRISE ET
répond à un objectif métier PEUVENT ÊTRE
spécifique et communique DÉPLOYÉS DE FAÇON
avec les autres modules. INDÉPENDANTE. »
Qu'est-ce que l'architecture microservice
1. Différence entre microservice et
API
Différence entre microservice et API

 Les microservices et les API


ont fait l’objet de beaucoup
de communication à tel point microservices
qu’il existe aujourd’hui une
certaine confusion sur la VS
façon dont ils sont liés. Tout
d’abord, il faut insister sur le
API
fait que les microservices et
les APIs sont deux choses
différentes
Différence entre microservice et API

 Un microservice est une


architecture pour les
applications qui sépare une
application en plusieurs
petits services web
autonomes
Différence entre microservice et API

 L’API (Application
programming Interface) est,
comme son nom l'indique,
une interface de
programmation. Elle
constitue le cadre à travers
lequel un développeur peut
interagir avec une
application
Différence entre microservice et API

 Les APIs sont un ensemble de classes, méthodes, fonctions


et constantes qui sert d’interface par laquelle un logiciel peut
offrir ses services à d’autres logiciels. Elles servent
concrètement à accéder aux données d’une application et à
utiliser ses fonctionnalités. La confusion se produit car il
existe un chevauchement entre ces deux concepts
informatiques. De nombreux microservices utilisent en effet
des API pour communiquer entre eux.
2. Le fonctionnement du
microservice
Le fonctionnement du microservice

 Le concept de base du micro service est le suivant : c’est


une application qui ne fait qu’une chose mais qui le fait de
manière optimale. Ses bénéfices sont les suivants :

● Il est facilement remplaçable pour offrir une


évolutivité à l’application
● Il est déployé indépendamment
● Son développement est indépendant
Le fonctionnement du microservice

 Bien qu’ils soient développés et déployables


indépendamment, chaque microservice n’a pas de raison
d’exister seul. Normalement, il existe de nombreux
microservices dans une architecture de ce type. Et pour que
la solution ou application fonctionne, les microservices
doivent communiquer et interagir les uns avec les autres. Le
microservice fait donc partie d’un écosystème plus vaste,
fonctionnant et travaillant avec d’autres microservices pour
accomplir ensemble les fonctions de leur application mère.
II. A quoi sert le microservice ?
A quoi sert le microservice ?

 Les microservices ont été créés pour répondre à des besoins


de traitement de la donnée et d’organisation auxquels les
architectures SOA monolithiques ne pouvaient plus
répondre. Parmi toutes les utilités de l'écosystème de
microservices, il en existe 5 principales.
1. Réduction du temps de
développement
Réduction du temps de développement

 Grâce à un développement distribué, plusieurs microservices


peuvent être travaillés et développés simultanément. La
durée du développement de l’application est de ce fait
réduite car plusieurs développeurs peuvent intervenir sur le
projet en même temps sans se déranger et nuire au travail
de l’autre
2. Évolutivité accrue
Évolutivité accrue

 Avec les microservices et leur indépendance en termes de


développement et de déploiement, les développeurs peuvent
mettre à jour un composant sans que cela n’ait d’incidence
sur les autres composants de la solution. Cela permet de
faire évoluer l’application sereinement pour répondre à de
nouveaux besoins et de nouvelles demandes sans entraver
le fonctionnement du système.
3. Réduction des pannes
Réduction des pannes

 Les microservices étant indépendants, lorsqu’un élément


tombe en panne ou rencontre un problème, l’ensemble de
l’application ne cesse pas de fonctionner contrairement aux
applications monolithiques. Il est également plus facile
d’identifier et de résoudre une panne dans ce type
d'écosystème.
4. L’adaptabilité de chaque
microservice aux outils de travail
L’adaptabilité de chaque microservice aux outils
de travail

 L’indépendance des composants offre la possibilité de


paramétrer les microservices avec différents langages de
programmation. Ainsi, les outils opérationnels utilisés par
l’entreprise peuvent être rendus compatibles avec la solution
globale. De plus, l’évolution technologique ne constitue plus
un problème avec ce type d’architecture étant donné que les
langages d’implémentation de chacun des microservices
peuvent être changés pour s’adapter aux nouvelles
innovations.
5. La flexibilité par rapport au
cloud
La flexibilité par rapport au cloud

 Une entreprise qui utilise l’architecture en microservices peut


réduire ou augmenter son usage du cloud en fonction de la
charge de l’application. L’organisation est ainsi beaucoup
plus flexible.
Autres exemples d'utilité
Autres exemples d'utilité

 Migration de sites Web: un site Web complexe hébergé sur


une plate-forme monolithique peut être migré vers une plate-
forme de microservices dans le cloud, basée sur des
conteneurs.
 Contenu multimédia: Grâce à l'architecture de microservices,
les images et les éléments vidéo peuvent être stockés dans
un système de stockage d'objets évolutif, et diffusés
directement sur le Web ou sur mobile.
 Transactions et factures: Le traitement et le règlement des
paiements peuvent être séparés sous la forme d'unités de
services indépendantes afin que les paiements restent
acceptés si la facturation ne fonctionne pas.
 Traitement des données: Une plate-forme de microservices
peut étendre la compatibilité cloud pour les services de
traitement de données modulaires existants.
III. Comment utiliser au mieux les
microservices ?
Comment utiliser au mieux les microservices ?

 Un microservice nécessite une grande infrastructure et doit


être conçu à partir de zéro. Ils ne peuvent pas être isolés
complètement puisqu’ils sont conçus pour s’exécuter et
interagir dans un environnement dédié : l’écosystème des
microservices.
 Pour que leur implémentation soit réussie elle doit être
réalisée avec un esprit de durabilité. Il faut en effet réfléchir
en amont à comment stabiliser l’environnement, comment le
faire évoluer et le rendre fiable et tolérant aux pannes. Voici
les bonnes pratiques, divisées en 4 couches, d’un
écosystème de microservices.
1. Le matériel
Le matériel

 Cette couche comprend les serveurs hôtes physiques, les


bases de données et les systèmes d’exploitation. Qu’il s’agisse
d’un Linux, Solaris ou Windows, le système d’exploitation doit
être configuré avec des outils de gestion de configuration tels
que Ansible, Chef ou Puppet. Il doit également être utilisé pour
installer toutes les applications et définir les configurations
nécessaires. Sans ce travail en amont, vous aurez des
problèmes d’évolutivité. Si vous avez besoin d’effectuer une
mise à l’échelle, tout devra être configuré à nouveau. Vous
aurez également besoin d’une surveillance au niveau de l’hôte
pour résoudre rapidement les éventuels problèmes rencontrés.
2. Les communications
Les communications

 Cette couche de l’infrastructure des microservices affecte


toutes les autres couches. Sans communication adéquate,
aucune des autres parties de l’architecture ne peut
fonctionner. Pour les données, les microservices peuvent
utiliser HTTP plus RAF ou un canal de communication TIFF.
Pour la messagerie, le microservice enverra des messages
sur le réseau via http ou le protocole choisi. Il est également
très important d’inclure la découverte, le registre et
l’équilibrage de charge dans la couche de communication
pour faciliter la communication dynamique à travers
l’infrastructure.
3. Le développement
Le développement

 C’est la phase durant laquelle les applications sont en cours


de développement. Cette couche doit donc héberger tous les
outils de développement en libre-service permettant de créer
de nouvelles bases de données, tables, schémas et ports.
L’intégration d’outils de journalisation et de surveillance est
une étape vitale dans la couche de développement. Si tout a
été bien construit, le déploiement doit être automatique
4. Le microservice
Le microservice

 C’est la dernière couche, et c’est la plus simple. C’est là que


le microservice vit et s’exécute. C’est également dans cette
couche que le fichier de configuration réside et que les outils
en libre-service des autres couches doivent être placés si
des modifications doivent être apportées.
CONCLUSION
Conclusion

 L'architecture microservice est de plus en plus populaire


pour développer des logiciels et applications grâce à ses
nombreux avantages tels que son évolutivité. Son style
modulaire permet des pratiques d’évolution continue. Les
entreprises se tournent de plus en plus vers les
microservices pour leurs architectures de développement et
d’applications cloud.
FIN

Vous aimerez peut-être aussi