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

[lightning talk] Building Microservices: some guiding principles

[lightning talk] Building Microservices: some guiding principles

Nowadays, monolithic applications are not cool anymore, everything seems to be moving towards a Microservices oriented architecture, which isn't much different than the good old Service Oriented Architecture, it's just a different name.

In this lightning talk I go through few principles I like to keep in mind when building or designing a system with this architectural pattern so I can keep the architecture clean and simple and minimize the headaches produced by the inherent complexities in a distributed system. Everything in under 5min

Israel Fermín Montilla

November 17, 2018
Tweet

More Decks by Israel Fermín Montilla

Other Decks in Programming

Transcript

  1. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Building microservices Some guiding principles Israel Fermín Montilla November 16, 2018
  2. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Microservices, why?
  3. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Microservices, why? Because...
  4. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Microservices, why? Because... YOLO
  5. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How? 10 guiding principles
  6. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Low coupling, high cohesion
  7. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Services don’t depend on each other
  8. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . One transaction hits one service
  9. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . No service affects another
  10. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bounded contexts by business realm
  11. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Choreography over Orchestration
  12. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Events are first class citizens
  13. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rely on Analytics and Logs for debugging
  14. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rate limits, data privacy, authentication and authorization for all
  15. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Auto-deploy independently after automated tests
  16. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . More? questions? Come talk to me :-)
  17. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Follow me on twitter @iferminm
  18. . . . . . . . . . .

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Thank you! **** We’re hiring **** **** [email protected] ****