Implémentation des microservices sur AWS
Date de publication : 9 novembre 2021 (Historique du document et contributeurs)
Résumé
Les microservices s'intègrent dans une approche architecturale et organisationnelle du développement logiciel créée pour accélérer les cycles de déploiement, à favoriser l'innovation et l'appropriation, à améliorer la maintenabilité et la capacité de mise à l'échelle des applications logicielles et à faire évoluer les organisations qui fournissent des logiciels et des services en utilisant une approche agile qui aide les équipes à travailler indépendamment. Avec cette approche basée sur les microservices, les logiciels sont constitués de petits services qui communiquent via des API bien définies qui peuvent être déployés indépendamment. Ces services sont la propriété de petites équipes autonomes. Cette approche agile est la clé de la mise à l’échelle réussie de votre organisation.
Trois modèles courants ont été observés lorsque des clients AWS créent des microservices : orienté API, orienté événement et livraison de données. Le présent livre blanc présente les trois approches et résume les caractéristiques communes des microservices, aborde les principaux défis que présente la conception de microservices et décrit comment les équipes produit peuvent s'appuyer sur Amazon Web Services (AWS) pour relever ces défis.
En raison de la nature plutôt complexe des divers sujets abordés dans ce livre blanc, notamment le stockage des données, la communication asynchrone et la découverte de services, il est recommandé de prendre en compte les exigences spécifiques et les cas d'utilisation de leurs applications, en plus des conseils fournis, avant d'effectuer choix architecturaux.
Introduction
Les architectures de microservices ne sont pas une approche complètement nouvelle de l'ingénierie logicielle, mais plutôt une combinaison de divers concepts réussis et éprouvés tels que :
-
Développement logiciel agile
-
Architectures orientées services
-
Conception privilégiant les API
-
Intégration continue / livraison continue (CI/CD)
Dans de nombreux cas, des modèles de conception de l'application à douze facteurs
Dans un premier temps, ce livre blanc décrit les différents aspects qui caractérisent une architecture de microservices hautement évolutive et tolérante aux pannes (interface utilisateur, implémentation de microservices et magasin de données) et comment la concevoir sur AWS à l'aide des technologies de conteneurs. Les services AWS sont ensuite recommandés pour l'implémentation d'une architecture de microservices sans serveur classique afin de réduire la complexité opérationnelle.
L'approche sans serveur est définie comme un modèle opérationnel par les principes suivants :
-
Aucune infrastructure à allouer ou gérer
-
Scalabilité automatique en fonction des unités de consommation
-
Modèle de facturation en fonction de la valeur proposée
-
Disponibilité et tolérance aux pannes intégrées
Enfin, ce livre blanc aborde le système global et es aspects inter-services d'une architecture de microservices, tels que la surveillance et l'audit distribués, la cohérence des données, ainsi que la communication asynchrone.
Ce livre blanc se concentre uniquement sur les charges de travail exécutées dans le cloud AWS. Il n'aborde pas les scénarios hybrides ni les stratégies de migration. Pour plus d'informations sur la migration, reportez-vous au livre blanc Méthodologie de migration de conteneurs