Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Introduction to Spring Cloud

SpringOne 2020
Introduction to Spring Cloud

Olga Maciaszek-Sharma, Member of Technical Staff 3, VMware
Spencer Gibb, Spring Cloud Core Lead, VMware

  • Soyez le premier à commenter

Introduction to Spring Cloud

  1. 1. Introduction to Spring Cloud Slack: #session-introduction-to-spring-cloud Olga Maciaszek-Sharma @olga_maciaszek Spencer Gibb @spencerbgibb
  2. 2. Safe Harbor Statement The following is intended to outline the general direction of VMware's offerings. It is intended for information purposes only and may not be incorporated into any contract. Any information regarding pre-release of VMware offerings, future updates or other planned modifications is subject to ongoing evaluation by VMware and is subject to change. This information is provided without warranty or any kind, express or implied, and is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions regarding VMware's offerings. These purchasing decisions should only be based on features currently available. The development, release, and timing of any features or functionality described for VMware's offerings in this presentation remain at the sole discretion of VMware. VMware has no obligation to update forward looking information in this presentation.
  3. 3. Agenda • Cloud Native • Sample Architecture • Spring Cloud Components • Revisit Sample Architecture • Demo 3 
  4. 4. Cloud Native • Distributed • Scalable • Resilient • Automated • Organizational (Conway’s Law) • Replaceable 4 
  5. 5. Fallacies of Distributed Computing • The network is reliable. • Latency is zero. • Bandwidth is infinite. • The network is secure. • Topology doesn't change. • There is one administrator. • Transport cost is zero. • The network is homogeneous. https://web.archive.org/web/20071223073932/http://java.sys-con.com/read/38665.htm 5 
  6. 6. 12 Factor Apps https://12factor.net 1.Code in VCS 2.Dependencies 3.Config in environment 4.Backing Services 5.Build, release, run 6.Process 6  7.Port binding 8.Concurrency 9.Disposability 10.Dev/prod parity 11.Logs 12.Admin processes See also the 1 Factor App and 15 Factor Apps
  7. 7. User Service Sample Architecture API Gateway Metrics Service Discovery Fraud Verifier Configuration Card Application Service
  8. 8. Distributed Configuration Service A Config Server Service B
  9. 9. Spring Cloud Config Server ● Pluggable ○ Git ○ Vault ○ Credhub ○ JDBC ○ IaaS resource (S3, etc…) ● Retry ● Spring Boot compatible client 9
  10. 10. Spring Cloud Consul Config ● Bring your own Consul ● Uses key-value store ● Can be on value per key or a file per key ● Can be auto-refreshed ● Spring Boot compatible client 1 0
  11. 11. Others ● Spring Cloud Vault ● Spring Cloud Zookeeper Config ● Direct to IaaS ○ Spring Cloud Alibaba ○ Spring Cloud AWS ○ Spring Cloud Azure ○ Spring Cloud GCP ● Platform ○ K8s config maps 1 1
  12. 12. Service A Service A Service Registration and Discovery Service A Service Registry Service B 1. Registers 2. Query for Service A instances 3. Connect
  13. 13. Netflix Eureka ● Provided by Spring Cloud Netflix ● Highly Available ● Eventually Consistent ● Netflix uses Spring Cloud Netflix! http://techblog.netflix.com/2012/09/eureka.html 1 3
  14. 14. Consul by Hashicorp ● Integration by Spring Cloud Consul ● Bring your own Consul Servers ● Can be strongly consistent ● Uses Services API ● Supports consul health checks ● Spring Boot compatible client 1 4
  15. 15. Others ● Spring Cloud Zookeeper Discovery ● Spring Cloud Alibaba (Nacos) 1 5
  16. 16. Client Side Load-balancer Service A Service A Service A Service Registry Service B 1. Query service A instances 2. Select the service A instance to send the request to Service A Service A Service A
  17. 17. Spring Cloud LoadBalancer ● Replaces Netflix Ribbon ● Pluggable algorithm ● Reactive support ● Extensible configuration 1 7
  18. 18. Failure Mitigation
  19. 19. Spring Cloud Circuit Breaker ● Protects from cascading failures ● Fallback ● Pluggable ○ Resilience4j ○ Spring Retry ○ Spring Cloud Alibaba (Sentinel) ● Pluggable algorithm ● Reactive support 1 9 Open Closed Half Open Failure threshold exceeded Success Timeout Reset Failure
  20. 20. Retry ● Retry failed requests ● Spring Retry ● Project Reactor ● Resilience4j 2 0
  21. 21. Distributed Tracing Browser API Gateway User Service Mobile App Cart Service Inventory Service Inventory DB User DB
  22. 22. Spring Cloud Sleuth ● Trouble-shooting across a distributed system ● Instruments for tracing ○ Spring Framework ○ Spring Boot ○ Spring Cloud 2 2
  23. 23. API Gateway Browser API Gateway User Service Mobile App Cart Service
  24. 24. Spring Cloud Gateway ● API Gateway ● Spring Boot App ● Focus on developer experience and customization ● Supports Spring Cloud ○ Configuration ○ Service Discovery ○ LoadBalancer ○ Retry/Circuit Breaker ○ Rate Limiting ○ Sleuth 2 4
  25. 25. User Service (SC Circuit Breaker) Sample Architecture with Spring Cloud Spring Cloud Gateway (SC CircuitBreaker, Retry) Metrics Eureka Service Discovery Fraud Verifier Spring Cloud Config Server Card Application Service (SC LoadBalancer)
  26. 26. Demo
  27. 27. What we did not talk about.
  28. 28. More to Spring Cloud ● Spring Cloud Bus ● Spring Cloud OpenFeign ● Spring Cloud Contract ● Spring Cloud Function ● Spring Cloud Stream ● Spring Cloud Task ● Spring Cloud Data Flow ● ... 2 8
  29. 29. Stay Connected. Slack: #session-introduction-to-spring-cloud https://github.com/spring-cloud-samples/spring-cloud-intro-demo https://github.com/spring-cloud https://spring.io/projects/spring-cloud Olga Maciaszek-Sharma @olga_maciaszek Spencer Gibb @spencerbgibb #springone@s1p

    Soyez le premier à commenter

  • leofprince

    Sep. 15, 2020
  • fasoulas

    Nov. 7, 2020
  • ManikandanS76

    Feb. 17, 2021
  • NadyHabashy

    Mar. 19, 2021
  • talub

    Apr. 1, 2021

SpringOne 2020 Introduction to Spring Cloud Olga Maciaszek-Sharma, Member of Technical Staff 3, VMware Spencer Gibb, Spring Cloud Core Lead, VMware

Vues

Nombre de vues

963

Sur Slideshare

0

À partir des intégrations

0

Nombre d'intégrations

221

Actions

Téléchargements

86

Partages

0

Commentaires

0

Mentions J'aime

5

×