Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Microservices avec Spring Cloud

132 views

Published on

Introduction aux microservices et mise en oeuvre avec Spring Cloud

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Microservices avec Spring Cloud

  1. 1. Microservices avec Spring Cloud Florian Beaufumé 09/2019
  2. 2. • Architecte logiciel et expert Java • Freelance • Brown bag lunch • @fbeaufume Florian Beaufumé
  3. 3. Monolithe vs microservices
  4. 4. Un modèle d'architecture basé sur l'utilisation de services indépendants, limités, orientés métier et communicants Microservices
  5. 5. • Cycles de développement indépendants • Builds et livraisons simplifiés et moins risqués • Isolation runtime • Configuration fine • Scaling horizontal fin • Robustesse • Migrations techniques • Programmation polyglotte Bénéfices
  6. 6. • Identification et découper les services et données • Communications entre services • Cohérence des données • Event driven • Automatisation • Besoins de monitoring Difficultés
  7. 7. Spring Kubernetes & Istio Boot Cloud Netflix Solutions
  8. 8. Spring Cloud
  9. 9. Client applications Gateway Order Stock MongoH2 Service registry Config server Git Spring Boot Spring Boot Spring Boot Spring Cloud Gateway Spring Boot Netflix Eureka Spring Boot Spring Cloud Config Lookup Register Get config 8081 8082 80808888 8761 Architecture Spring Cloud Netflix
  10. 10. https://github.com/fbeaufume/microshop
  11. 11. pom.xml main application.yml Config server
  12. 12. http://localhost:8888/order/default
  13. 13. Service registry pom.xml main
  14. 14. http://localhost:8761/
  15. 15. http://localhost:8761/eureka/apps/order
  16. 16. Microservice métier pom.xml boostrap.xml
  17. 17. Load balancer et circuit breaker @Configuration RestConfiguration @Service OrderService 2 3 4 1
  18. 18. Gateway pom.xml main application.yml
  19. 19. Routage • Par cookie • Par header • Par host • Par date • Etc.
  20. 20. Filtrage Served GET 'http://localhost:8080/api/orders' as 200 in 16 msec 2 3 4 5 1
  21. 21. Traces distribuées Gateway Order Stock pom.xml
  22. 22. http://localhost:9411/zipkin/ Zipkin application.yml
  23. 23. @Component @Aspect ZipkinTracingAspect Interception des méthodes 1 2 3 5 4
  24. 24. Spring Boot Admin http://localhost:8090/
  25. 25. Merci @fbeaufume

×