Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

Microservices at Netflix

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Wird geladen in …3
×

Hier ansehen

1 von 37 Anzeige
Anzeige

Weitere Verwandte Inhalte

Diashows für Sie (20)

Ähnlich wie Microservices at Netflix (20)

Anzeige

Aktuellste (20)

Microservices at Netflix

  1. 1. Application Networks: Microservices at Netflix May 2016
  2. 2. Uri Sarid CTO – MuleSoft Katharina Probst Engineering Manager, API – Netflix
  3. 3. To survive and thrive, you need: 3 RobustnessAgilitySpeed
  4. 4. 4 And do it all – at scale!
  5. 5. No business is safe from disruption 5
  6. 6. No business is safe from disruption 6 “52% of the Fortune 500 have been merged, acquired, gone bankrupt or fallen off the list since 2000.” – R. Ray Wang, Principal Analyst, Constellation Research
  7. 7. But some survive and thrive 7 McDonalds: just a fast-food chain? a digital restaurant platform for innovation and execution agility
  8. 8. What are they doing right? 8 on what: better apparel? price and selection? Under Armour is “building the biggest connected fitness platform in the world” competes with
  9. 9. They are composable, built for change 9 an immersive content platform automotive software innovation platform parcels and logistics API-first business retail enterprise data fabric network as a service
  10. 10. Remember why an application network 10 A seamless network of applications that… … is organized around focused, well-defined units of value … is recomposable … emerges bottoms-up via self-service … where visibility, security and govern-ability are built in … where connectivity and reuse are top-level concerns … bends, not breaks … where each node adds value to the whole network … where the business regains control of its future
  11. 11. 11 Microservices towards microservices
  12. 12. 12 The 2 pillars of microservices API excellence devops excellence
  13. 13. The 2 pillars of microservices • API excellence - Define atomic service boundaries - Design for purpose – know service commitment - Dependencies well-defined and managed - API lifecycle • Devops excellence - Standardize containers and meta-services (services for your services) - Automate promotion, testing, provisioning, deployment, security, … - Design for resilience and operatability 13
  14. 14. Services at Netflix Self-contained functionality exposes an API Always owned by a team Many teams own more than one service Operated by owner team Self-contained functionality exposes an API Always owned by a team Many teams own more than one service Operated by owner team
  15. 15. …. System overview Zuul (gateway) API Personali- zation User info EVCache Ratings A/B
  16. 16. Services interactions (simplified) 1 2 4 5 6 7? Zuul (gateway) Geo API User Info A/B EVCache Recommen- dations 3
  17. 17. Lifecycle of a service
  18. 18. Services scale independently Services scale up/down with traffic Changes in traffic patterns don’t affect services equally
  19. 19. Services evolve independently Independent release cycles Some services change more frequently than others
  20. 20. Embedding service EVCache service EVCache client lib Services provide client libraries Client library as canonical way to interact with service Service owner defines API
  21. 21. Lifecycle of API service Daily dependency updates Daily canaries Daily pushes: ((new code || new dependency updates) && canaries pass)
  22. 22. Spinnaker for CI, CD, and more
  23. 23. Spinnaker for CI, CD, and more
  24. 24. Operations: engineers are responsible for: Code pushes Metrics, alerts, monitoring Choosing the right tooling for whatever operational insight you need
  25. 25. Atlas for telemetry
  26. 26. Mantis for real-time analysis
  27. 27. How to create a new service - paved path Teams want to build business logic, not an RPC mechanism A central team can provide a paved path (template)
  28. 28. 28 Lessons from microservices at scale Smart enablement: • Templatize services • Templatize process • Reuse: patterns • Reuse: services • Provide expertise Smart operations: • Automated++ • Fail fast & learn • Design for failure • Disrupt yourself • Bend vs break Smart containers: • Built-in governance • Built-in meta-svcs • Setup for SDLC • Fungible • Understood by ops
  29. 29. Planning for failure in a complex system Zuul API Downstream services
  30. 30. Testing for different failure conditions Chaos monkey Chaos Kong FIT
  31. 31. Protect against failure: Hystrix …. API Personali- zation User info EVCache Ratings A/B
  32. 32. Hystrix …. API Personali- zation User info EVCache Ratings A/B Don’t let this happen.
  33. 33. Hystrix …. API Personali- zation User info EVCache Ratings A/B Instead, don’t send more traffic to unhealthy service.
  34. 34. Hystrix …. API Personalization fallback User info EVCache Ratings A/B Serve fallbacks instead.
  35. 35. Hystrix …. API Personali- zation User info EVCache Ratings A/B Return to normal when service is back up.
  36. 36. 36 Microservices for you? API excellence devops excellence an immersive content platform • SDLC • Connectivity • Bridges • Paved path • Automation • Tools for failure, compensation, visibility, and recovery • … • Culture & mindset • Training • Devops • Buy-in from bottom • Buy-in from top • Bridges • Team ownership – to what degree? • …
  37. 37. Thank you

×