Maximaliser la valeur d'une architecture basée sur des microservices par Sam Newman

Sam Newman, l'auteur du livre "Building Microservices" (publié en 2015, réédité en 2021), a partagé quelques conseils sur la façon d'interfacer, de surveiller, de déployer et de sécuriser les microservices.

Maximaliser la valeur d'une architecture basée sur des microservices par Sam Newman

< Vers plus de modularité avec les microservices

De nombreuses préoccupations pratiques doivent être prises en compte lors de l'exécution de systèmes de microservices. Sam Newman, l'auteur du livre "Building Microservices" (publié en 2015, réédité en 2021), a partagé quelques conseils sur la façon d'interfacer, de surveiller, de déployer et de sécuriser les microservices.

Selon Newman, les avantages des microservices incluent la capacité de refléter les entités et les opérations au niveau du domaine, de s'aligner sur la structure d'une organisation, d'être déployés de manière indépendante, d'adopter de nouvelles technologies et de fournir une approche fine de l'ajustement des performances et de la mise à l'échelle.

Cependant, il existe une tension entre la normalisation et l'autonomie lors de la construction de systèmes de microservices. Newman suggère que la solution consiste à normaliser les écarts entre les services et à être flexible quant à ce qui se passe à l'intérieur de ceux-ci. Une approche de type DDD (domain driven design) permet justement de normaliser ces écarts et de limiter les dépendances. Nous pouvons citer l'usage de méthodologies de type Event Storming, particulièrement efficace dans la défiinition des contours des domaines, sous-domaines et entités principales.

Les qualités des microservices selon Sam Newman

Newman recommande également de définir des interfaces contractuelles pour chaque microservice, afin de réduire le couplage et d'éviter les mécanismes RPC ou les protocoles de sérialisation partagés. Ainsi, il suggère de limiter le nombre de styles d'intégration et d'utiliser des styles d'intégration évolutifs, tels que ceux orientés évènements, plutôt que le style orienté procédures basé sur les mécanismes RPC et les protocoles de sérialisation.

Parmi les autres conseils, citons la surveillance séparée de chaque microservice, l'utilisation de déploiements blue/green pour minimiser les temps d'arrêt (fonctionnement en parallèle de l'ancien et du nouveau système) et la mise en œuvre de la sécurité au niveau du réseau. Il est important de garder à l'esprit que si les microservices offrent de nombreux avantages, ils s'accompagnent également de leur propre lot de défis à relever.

Quand Sam Newman parle microservices avec Martin Fowler

Génial ! Vous vous êtes inscrit avec succès.

Bienvenue de retour ! Vous vous êtes connecté avec succès.

Vous êtes abonné avec succès à WENVISION.

Succès ! Vérifiez votre e-mail pour obtenir le lien magique de connexion.

Succès ! Vos informations de facturation ont été mises à jour.

Votre facturation n'a pas été mise à jour.