Les Cast Codeurs Podcast: LCC 235 - Interview Micro Services avec @ygrenzinger et @khaledsouf
7/8/20 - Episode Page
Dans cet épisode, Audrey et Antonio ont invité Yannick Grenzinger et Kahled Souf pour parler micro services : pour quelle équipe, quel projet, avec quels outils … ? Nos invités vous partagent leurs retours d’expérience et leurs conseils.
Enregistré le 3 juillet 2020
Téléchargement de l’épisode LesCastCodeurs-Episode–235.mp3
Interview Ta vie, ton oeuvre
Yannick Grenzinger: Jardinier logiciel depuis plus de 15 ans. Actuellement coach tech et flow, je suis passionné par l’artisanat logiciel, les langages, l’architecture de systèmes complexes et la livraison de valeur métier en continue. Je suis aussi co-organisateur de la conférence FlowCon et du meetup Paris Continuous Delivery, mais c’est plus dur avec des triplés :D
Khaled Souf est un Globe-trotter et développeur passionné. Il a vécu à Paris où il a travaillé pour des sociétés de conseil telles que Zenika et Arolla. il a participé à la communauté des software crafters à Paris et en Europe.Il a participe à des événements locaux, tels que les meetups Software Crafters Paris, Craft your skills, Coding Dojo. Il vit actuellement à Montréal au Canada et co-organise le Meetup Software Crafters Montréal et la conférence de SOCRATES Canada. Il aime parler de Domain Driven Design, d’architecture, d’artisanat du code, de Clean Code, des pratiques eXtreme Programming et DevOps. ksouf.com
Les micro services qu’est ce que c’est ? En théorie
Monolithe / Macroservices / Microservices / Fonction ? Microservices vs SOA ?
Microservices, dans quel cas ? Monolithe à découper ou nouvelle app from scratch ? Patterns de migration ?
Comment on découpe ses services ? Est ce qu’il y a des méthodos qui aident ? (nombre de lignes de code, nombre de pizzas par équipe, DDD)
Une base de données unique pour tous les services ? Une par service ? Consistance des données ? Synchronisation des données entre bases ?
Pour quelles équipes ? (DevOps, DevSecOps …)
En pratique
C’est quoi les reco techniques ? (frameworks Java ou autres, plateformes de déploiement, etc… )
Et dans le monde Java ? Qu’en est-il de la suite Netflix OSS (Eureka, Hystrix, Zuul, Ribbon) ?
Comment on déploie / scale / fait communiquer entre eux (bloquant, non bloquant, HTTP, broker, message) ?
On-premise, Cloud privée/public/hybride ?
Si tu fais pas du k8s tu as loupé ta vie ? Et si tu fais pas du Kafka tu as aussi loupé ta vie ?
Comment monitorer ?
Et côté front ?
Micro frontend : comment et pourquoi ?
Le mot de la fin
Phénomène de mode ou les MS sont-ils là pour rester ? Quelles sont les évolution possibles des archi MS (vers les fonctions) ?
Les resources utiles
Les livres de Sam Newman, surtout Building Microservices et ses talks
Le livre Microservices Patterns de Chris Richardson
Pour mieux appréhender la complexité de l’aventure et ses prérequis:
La rubrique microservices du site de Martin Fowler 11 raisons pour lesquelles vous allez échouer avec les microserviceshttps://www.martinfowler.com/bliki/MicroservicePrerequisites.html Recommandations sur les microservices Pourquoi les micro services devraient vous faire plus peur Vous devez être aussi grand que ça pour passer d’un monolithe à un micro servicesPour les meilleures pratiques :
Le site de Chris RichardsonLe site de MicrosoftLe site d’IBMDDD et microservices:
DDD and Microservices: At Last, Some Boundaries! (vidéo)Strategic Microservice Patterns - Nick Tune (vidéo) Astuces pour faciliter le design de micro services avec l’event stormingOrchestration, chorégraphie et saga :
Orchestration vs chorégraphie Le pattern Saga pour implémenter les transactions business en microservicesUsing sagas to maintain data consistency in a microservice architecture - Chris Richardson(vidéo)Tests : 12 techniques pour tester les micro services
Microfrontend : L’article de Martin Fowler 6 patterns pour les micro frontend
Monitoring :
Le pourquoi et le comment monitorer des micro services Les challenges du monitoring de microservices dans les applications cloud nativeLes outils :
Spring qui réutilise les outils de Netflix puis Netflix qui utilise SpringCircuit breaker : Resilience4j remplace Hystrix (abandonné) Tracing : Open Tracing Zipkin et Sleuth Spring Cloud Nous contacter
Faire un crowdcast ou une crowdquestion Contactez-nous via twitter https://twitter.com/lescastcodeurs sur le groupe Google https://groups.google.com/group/lescastcodeurs ou sur le site web https://lescastcodeurs.com/ Flattr-ez nous (dons) sur https://lescastcodeurs.com/ En savoir plus sur le sponsoring? sponsors@lescastcodeurs.com