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 services

et la conf associée

Pour les meilleures pratiques :

Le site de Chris RichardsonLe site de MicrosoftLe site d’IBM

DDD 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 storming

Orchestration, 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 native

Les outils :

Spring qui réutilise les outils de Netflix puis Netflix qui utilise Spring

Circuit 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