C'est quoi une architecture microservices ?

Qu'est-ce que c'est ?

Une définition

Petits services autonomes qui fonctionnent ensemble, modélisés autour d'un domaine métier.

 

Sam Newman

Qu'est-ce que c'est ? 

Qu'est-ce que c'est ? 

Déploiement indépendant

Possède son propre état (BDD)

Qu'est-ce que c'est ? 

Modélisé autour d'un domaine métier

Qu'est-ce que c'est ? 

Un schéma

Qu'est-ce que c'est ? 

TODO

Avantages

Avantages

Agrandir l'équipe

Avantages

Plus facile à faire évoluer

Avantages

(Peut être) plus robuste

Avantages

Dimensionner les services selon leurs besoins

Avantages

Composabilité

Avantages

Architecture polyglotte

Inconvénients

Expérience développeur

Infrastructure plus complexes

Inconvénients

Tu ne peux pas tout lancer en local

Nécessite d'adapter la conception technique

Monitoring & dépannage

Inconvénients

Latence

Inconvénients

Consistance des données

Inconvénients

Plus de sources de problèmes

Inconvénients

Méthodes de modélisation

Couplage & cohésion

Une structure est stable si la cohésion est forte et le couplage faible.

 

Larry Constantine

Méthodes de modélisation

Domaine métier

Langage commun

Méthodes de modélisation

Event storming

Domain-driven design

Adapte l'organisation des équipes

Méthodes de modélisation

Toute organisation qui conçoit un système (défini au sens large) produira une conception dont la structure est une copie de la structure de communication de l'organisation.

 

Melvin Conway

Bonnes pratiques

Apprends à faire un bon monolithe avant de passer aux microservices

Bonnes pratiques

Bonnes pratiques

Logs centralisés & traces

Communication non-bloquante

Bonnes pratiques

"Design for failures"

Hardware

Bonnes pratiques

Erreurs internes

Dépendances

Communications inter-services

Met en place un bon monitoring

"Four Golden Signals" de Google

Bonnes pratiques

Saturation

Erreurs

Trafic

Latence

Pense "consistance éventuelle"

Évite les transactions distribuées

Bonnes pratiques

Séquence de transactions locales

Pattern de Saga

Conclusion

[DEPRECATED] C'est quoi une architecture microservices ? - Youtube - 11/05/2022

By Kajan Siva

[DEPRECATED] C'est quoi une architecture microservices ? - Youtube - 11/05/2022

De Netflix à Frichti, les architectures microservices ont le vent en poupe ces dernières années. Elles permettent aux entreprises de scaler leurs projets et leurs équipes. Dans ce talk, nous allons voir ensemble les principes de bases de ces architectures. Avec leurs avantages et inconvénients.

  • 134