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 in your Datacentre

4,759 views

Published on

From: https://qconnewyork.com/ny2016/presentation/digitalocean-microservices-datacentre


Abstract

Most cloud companies use traditional processes and architectures when developing their platform. DigitalOcean is different, we are a product-driven cloud company, focusing on building the best developer experience.

Over the years, we have migrated from a monolithic architecture to SOA and microservices. Today our distributed services support more than 13 million virtual machines, including block storage and monitoring.

But if the easiest way to deploy services is on the cloud, but what happens when what you are building is the cloud itself? In this talk let's discuss the patterns and techniques we use to evolve our architecture from the dark days of a Perl monolith to now.

Speaker: Phil Calçado

Director of Engineering @DigitalOcean
Phil Calçado is Director of Engineering at DigitalOcean. In previous lives, he built the product engineering organisation at SoundCloud and helped companies adopt SOA and Continuous Delivery at ThoughtWorks.
Find Phil Calçado at

Speaker page
http://philcalcado.com/
@pcalcado
Director, Software Engineering at DigitalOcean

Published in: Engineering
  • Be the first to comment

Microservices in your Datacentre

  1. 1. digitalocean.com Phil Calçado @pcalcado philcalcado.com Microservices in your Datacentre
  2. 2. digitalocean.com Phil Calçado @pcalcado philcalcado.com Microservices in your Datacentre
  3. 3. 13 datacentres
  4. 4. ~18 million droplets
  5. 5. a grown-up infrastructure company
  6. 6. Why am I even here?
  7. 7. Projects take too long idea $$
  8. 8. Upon closer look idea $$
  9. 9. Product Engineering Cloud Engineering
  10. 10. We will be talking about Product Engineering
  11. 11. I am completely biased
  12. 12. "The general tendency is to over- design the second system, using all the ideas and frills that were cautiously sidetracked on the first one." — Fred Brooks, "The Second-System Effect"
  13. 13. finaglescalamuxservicedisc overybuildpipelinesconsulra bbitmqkubernetesdockerzip kineventsourcingservicesdir ectorygolangbffsidecarsthrif tcircuitbreakerszookeeperk afkaprometheusjenkinsrund eckcassandrahadoophystrix what to prioritise?
  14. 14. Some stuff is just mandatory.
  15. 15. • Rapid provisioning • Basic Monitoring • Rapid application deployment
  16. 16. • Rapid provisioning 😎 • Basic Monitoring💩 • Rapid application deployment 💩
  17. 17. Value-Added Service Critical Path Service PCI, ect.
  18. 18. And some other stuff is just taste.
  19. 19. HTTP+JSON
  20. 20. Performance isn’t likely to be your problem using it.
  21. 21. Tolerant Reader leads to lots of duplicated code.
  22. 22. Duplicated code leads to client libraries.
  23. 23. Client libraries lead to release management overhead.
  24. 24. Client libraries lead to hidden business logic.
  25. 25. Client Libraries need to be efficient, lean, robust.
  26. 26. They don’t need to be written manually.
  27. 27. Something I’m sure you’ll have:
  28. 28. Circular dependencies.
  29. 29. Event Bus Circles can often be broken by async events
  30. 30. We are event driven by nature
  31. 31. What should be a service?
  32. 32. billing
  33. 33. rating invoicing payment -collectingenabled -features
  34. 34. rating invoicing payment -collectingenabled -features Highly visible Not visible Novel Commodity
  35. 35. It’s early days, but we can already see progress. idea $$
  36. 36. digitalocean.com Q&A

×