Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

Breaking Down Monoliths - DEM05-S - Anaheim AWS Summit

205 visualizaciones

Publicado el

Monolithic code bases are not only difficult to maintain, they slow your development teams. As your application grows, the tight coupling of code and teams can bring progress to a halt. In this session, Datadog shares tips for uncoupling your teams and breaking large code bases into microservices. This presentation is brought to you by AWS partner, Datadog.

  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Breaking Down Monoliths - DEM05-S - Anaheim AWS Summit

  1. 1. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Breaking Down Monoliths H. “Waldo” Grunenwald Tech Evangelist Datadog S e s s i o n I D
  2. 2. Breaking Down Monoliths
  3. 3. H. “Waldo” Grunenwald Tech Evangelist Datadog Breaking Down Monoliths
  4. 4. Your Story
  5. 5. @gwaldo Tech Evangelist & Writer “Docs & Talks” Recovering Ops Engineer
  6. 6. @datadoghq SaaS-based monitoring 250+ integrations Trillions of data points per day https://datadoghq.com
  7. 7. What do you mean by “Microservices”?
  8. 8. You might be a Microservice if... ● Abstracted ● Reusable ● Autonomous ● Stateless ● Discoverable ● Composable
  9. 9. You might be a Microservice if... ● Abstracted ● Reusable ● Autonomous ● Stateless ● Discoverable ● Composable
  10. 10. You might be a Microservice if... ● Abstracted ● Reusable ● Autonomous ● Stateless ● Discoverable ● Composable
  11. 11. You might be a Microservice if... ● Abstracted ● Reusable ● Autonomous ● Stateless ● Discoverable ● Composable
  12. 12. You might be a Microservice if... ● Abstracted ● Reusable ● Autonomous ● Stateless ● Discoverable ● Composable
  13. 13. You might be a Microservice if... ● Abstracted ● Reusable ● Autonomous ● Stateless ● Discoverable ● Composable
  14. 14. There is no real definition
  15. 15. Why Microservices?
  16. 16. Why…? ● Loose Coupling ● Greater Agility ● Faster to Market ● Better Scalability ● Better Fault Tolerance ● Platform & Language Agnostic ● Cloud-Ready
  17. 17. Why…? ● Loose Coupling ● Greater Agility ● Faster to Market ● Better Scalability ● Better Fault Tolerance ● Platform & Language Agnostic ● Cloud-Ready
  18. 18. Why…? ● Loose Coupling ● Greater Agility ● Faster to Market ● Better Scalability ● Better Fault Tolerance ● Platform & Language Agnostic ● Cloud-Ready
  19. 19. Why…? ● Loose Coupling ● Greater Agility ● Faster to Market ● Better Scalability ● Better Fault Tolerance ● Platform & Language Agnostic ● Cloud-Ready
  20. 20. Why…? ● Loose Coupling ● Greater Agility ● Faster to Market ● Better Scalability ● Better Fault Tolerance ● Platform & Language Agnostic ● Cloud-Ready
  21. 21. Why…? ● Loose Coupling ● Greater Agility ● Faster to Market ● Better Scalability ● Better Fault Tolerance ● Platform & Language Agnostic ● Cloud-Ready
  22. 22. Why…? ● Loose Coupling ● Greater Agility ● Faster to Market ● Better Scalability ● Better Fault Tolerance ● Platform & Language Agnostic ● Cloud-Ready
  23. 23. How to go about breaking apart code?
  24. 24. Identify Products
  25. 25. The Sandi Metz Rule
  26. 26. The Sandi Metz Rule
  27. 27. Preparing to Split
  28. 28. Preparing to Split ● Identify Current Interactions ● Write Tests and Monitors ● The Service’s Contract (API + SLA) ● Ensure Tests and Monitors Match App
  29. 29. Preparing to Split ● Identify Current Interactions ● Write Tests and Monitors ● The Service’s Contract (API + SLA) ● Ensure Tests and Monitors Match App
  30. 30. Preparing to Split ● Identify Current Interactions ● Write Tests and Monitors ● The Service’s Contract (API + SLA) ● Ensure Tests and Monitors Match App
  31. 31. Preparing to Split ● Identify Current Interactions ● Write Tests and Monitors ● The Service’s Contract (API + SLA) ● Ensure Tests and Monitors Match App
  32. 32. Breaking Off Chunks
  33. 33. Breaking Off Chunks ● Start with Peripheral Services ● Minimize Dependencies on Monolith ● Don’t be afraid of Macro Services ● Prioritize for team velocity
  34. 34. Breaking Off Chunks ● Start with Peripheral Services ● Minimize Dependencies on Monolith ● Don’t be afraid of Macro Services ● Prioritize for team velocity
  35. 35. Breaking Off Chunks ● Start with Peripheral Services ● Minimize Dependencies on Monolith ● Don’t be afraid of Macro Services ● Prioritize for team velocity
  36. 36. Breaking Off Chunks ● Start with Peripheral Services ● Minimize Dependencies on Monolith ● Don’t be afraid of Macro Services ● Prioritize for team velocity
  37. 37. Breaking Off Chunks ● Start with Peripheral Services ● Minimize Dependencies on Monolith ● Don’t be afraid of Macro Services ● Prioritize for team velocity
  38. 38. Moving to Product- Oriented Teams
  39. 39. Project vs. Product, and Funding Models
  40. 40. Project vs. Product, and Funding Models
  41. 41. Charter the Product Team
  42. 42. Breaking Down Monoliths: Conclusion H. “Waldo” Grunenwald Tech Evangelist Datadog
  43. 43. Visit Our Booth
  44. 44. Thank you! S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. H. “Waldo” Grunenwald waldo@datadoghq.com @gwaldo

×