Scaler : Un service peu sollicité peut rester sur une instance unique tandis qu’un service devant supporter une charge importante peut multiplier ses instances d’exécutions de manière transparente.
Pas de bus d’intégration (ESB) car il y a de la logique et donc cela froce le couplage
Utilisation d’un bus d’événements pour le faible couplage
Utilisation d’un LoadBalancer pour équilibrer la charge
Pas de bus d’intégration (ESB) car il y a de la logique et donc cela froce le couplage
Utilisation d’un bus d’événements pour le faible couplage
Utilisation d’un LoadBalancer pour équilibrer la charge
- Une fois le message envoyé, le service n’attend pas de réponse immédiate.
- Si un service tombe, tous les messages qui lui sont destinés sont gardés dans le bus. Il pourra reprendre le travail une fois redémarré, sans perte.
- N’importe qui peut lire dans le bus, qu’il y ait une ou dix instances du même service ne change rien pour le bus et cela répartit la charge entre chaque instance
décrit les conteneurs comme des environnements d'exécution légers avec la plupart des composants de base d'une machine virtuelle et les services isolés d'un système d'exploitation, conçus pour rendre le packaging facile et l'exécution des services en douceur.
D’autres raisons pour lesquelles, selon Erhan, les conteneurs et Docker valent la peine d'être considérés :
Avec un conteneur portable entre différentes plates-formes, la portabilité des applications peut être réalisée en plaçant l’application ainsi que toutes ses dépendances dans ce conteneur.
Les conteneurs comprennent tout simplement l'application et ses dépendances qui avec la nature légère des conteneurs rend efficace l'utilisation des ressources.
Les conteneurs peuvent fournir des environnements utilisateurs avec un contrôle strict des besoins en ressources sans recours à la virtualisation.
La technologie de conteneurs est une nouvelle technologie émergente avec Docker comme un leader et de nombreuses grandes entreprises ont déjà signé des accords de partenariat avec Docker.
Cette technique consiste à isoler l’utilisation des ressources de type processeur, mémoire et disque par application sur une même machine.
Le déploiement est uniformisé et simplifié : il s’agit de déployer un conteneur par microservice
Les tests d’intégration deviennent plus faciles
Cette technique consiste à isoler l’utilisation des ressources de type processeur, mémoire et disque par application sur une même machine.
Le déploiement est uniformisé et simplifié : il s’agit de déployer un conteneur par microservice
Les tests d’intégration deviennent plus faciles
Regrouper plusieurs “petits” services en un seul "macroservice" afin de faciliter la communication entre celui-ci et le reste du SI.
Il est important de trouver un juste milieux entre des services imposants et des services trop petits
Même si les microservices permettent l’utilisation de différents langages et différents types de bases de données: Si on en utilise trop, cette profusion rendra le passage d’un service à un autre compliqué.