Dans le cadre de ce didacticiel, vous allez déployer une application monolithique node.js sur un conteneur Docker puis découpler cette application en microservices sans aucune interruption. L’application node.js accueille un forum de discussion simple comprenant des threads et des messages entre utilisateurs.

Il est difficile de mettre à l’échelle les architectures monolithiques traditionnelles. Plus le code source d’une application augmente et plus il devient complexe de la mettre à jour et d’en effectuer la maintenance. Il devient particulièrement difficile d’y introduire de nouvelles fonctionnalités, langues, technologies et de nouveaux cadres, ce qui limite l’innovation et les idées novatrices.

Dans une architecture de microservices, chaque composant d’application s’exécute de façon autonome et communique avec d’autres services via une API clairement définie. Les microservices sont construits autour de capacités métier, et chaque service remplit une seule fonction. Les microservices peuvent être écrits en utilisant différents cadres et langages de programmation et vous pouvez les déployer de manière indépendante, comme un service unique, ou sous la forme d’un groupe de services.

Au cours de ce didacticiel, nous allons vous montrer comment exécuter une simple application monolithique dans un conteneur Docker, déployer cette même application sous forme de microservices, puis basculer le trafic vers les microservices sans interruption. Une fois que vous aurez terminé, vous pourrez utiliser ce didacticiel et le code qu’il contient comme modèles pour créer et déployer vos propres microservices conteneurisés sur AWS.

architecture d’application
Architecture monolithique

Architecture monolithique

L’application node.js s’exécute intégralement dans un conteneur en tant que service unique et chaque conteneur comprend les mêmes fonctions que tous les autres conteneurs. Si une fonction d’une application fait l’objet d’un pic de demandes, l’architecture entière doit être mise à l’échelle.

 
Architecture de microservices

Architecture de microservices

Chaque fonction de l’application node.js s’exécute en tant que service distinct dans son propre conteneur. Il est possible de mettre à l’échelle et de mettre à jour les services indépendamment des autres.

Expérience AWS : Moyen

Temps nécessaire : 2 heures

Coût de réalisation : chaque service utilisé dans cette architecture est accessible via l’offre gratuite AWS. Si vous avez dépassé les limites d’utilisation de l’offre gratuite, la réalisation de ce didacticiel vous coûtera moins de 0,25 USD*.

Technologies utilisées : pour réaliser ce tutoriel, vous aurez besoin de :

*Cette estimation suppose que vous suivez les configurations recommandées tout au long du didacticiel et supprimez toutes les ressources dans un délai de 24 heures.

** Il est possible que les comptes créés au cours des dernières 24 heures n’aient pas encore accès à toutes les ressources nécessaires pour réaliser ce parcours d’apprentissage.