Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Microservices: A Utopian mystery

Praveena
September 07, 2016

Microservices: A Utopian mystery

Adapted slides from the microservices talk at London Microservices meetup.

https://www.meetup.com/London-Microservices-User-Group/events/225204250/

Praveena

September 07, 2016
Tweet

More Decks by Praveena

Other Decks in Programming

Transcript

  1. 42

  2. Microservices (µservices) is a software architecture style in which complex

    applications are composed of small, independent processes communicating with each other using language-agnostic APIs. @praveenasekhar
  3. Utopia : An imagined place or state of things in

    which everything is perfect. Mystery: Something that is difficult or impossible to understand or explain. @praveenasekhar
  4. Make a conscious decision to think about your deployment strategy

    when you start with a story and slowly you’ll see deployment patterns evolve. @praveenasekhar
  5. { “authToken” : “token123”, “username” : ”John”, “age” : 28

    } { “user” : { “name” : ”John”, “age” : 28 } } @praveenasekhar
  6. 2 6 Good abstraction: Managing negative ttl caching can be

    abstracted to a shared library. @praveenasekhar
  7. Conway’s law Any organization that designs a system (defined broadly)

    will produce a design whose structure is a copy of the organization's communication structure. @praveenasekhar
  8. Horizontal slicing: UI Team, Platform team, Feature team. Vertical slicing:

    Feature team with developers, testers, platform, UI developers and product owners. @praveenasekhar
  9. • Chaos monkey • Health checks to check for dependent

    services. • System status dashboards. @praveenasekhar
  10. New kids on the block • Containerisation. • Service Registry.

    • AWS Lambda. • Ephemeral Containers. • *aaS @praveenasekhar
  11. • Improve in iterations • Have autonomy, take control for

    business as well as technology. • High cohesion and loosely coupled. • Embrace Conway’s law. Don’t fight it. • Have fun. @praveenasekhar
  12. Summary Keep it small. Focus on autonomy, from design to

    deployment. Plan for contingency, aka breaking changes. Pay attention to your bounded context. Choose what works best for you and document your reasons. Embrace Conway’s law. Take monitoring seriously. Testing; Do it. Invest in infrastructure. Embrace new technology. @praveenasekhar