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.

Building Scalable Micro-services with Nodejs

1,870 views

Published on

A meetup hosted by HotelQuickly Engineers, this time about scalable micro-services with Nodejs. See more at:
www.meetup.com/BKK-Developers-and-Tech-lovers/events/222069670/

Published in: Technology
  • Be the first to comment

Building Scalable Micro-services with Nodejs

  1. 1. Node.js Scalable Micro-Services
  2. 2. Server side javascript Makes it great for IO bound tasks Single threaded Event driven Best for asynchronous things
  3. 3. What do you think when you hear ‘scalable’?
  4. 4. What do I think when I hear ‘scalable’?
  5. 5. Will this code scale with your employees?
  6. 6. What is a Micro-Service? Separate monolithic functionality into smaller parts. MY AWESOME MONOLITH git git git gitgit svn? git git Design Pattern
  7. 7. Then distribute those parts in an individually scalable fashion, behind an API Facade. service API Facade service serviceservice service serviceservice
  8. 8. Room Available ? Monolithic API Payment 3rd party 3rd party Translation 3rd party Client request Server response
  9. 9. Room Available? API Facade Payment Translation 3rd party 3rd party 3rd party Client request Server response
  10. 10. With a powerful pattern comes great responsibility
  11. 11. Not everything can / should be microtized Lower level design problems will be multiplied across codebases
  12. 12. What is the secret sauce?
  13. 13. The Pyramid Of Doom
  14. 14. How to: DEAL WITH IT
  15. 15. Named Functions Flatten Dat Code
  16. 16. Async Library Also Flattens Dat Code
  17. 17. No Asynchronous IO?
  18. 18. .then(what the function (do) { we(do)……..
  19. 19. • Pending • Fulfilled • Rejected
  20. 20. Basic Promises
  21. 21. Advanced Promising
  22. 22. BONUS SLIDE
  23. 23. Next generation
  24. 24. Scaling your micro services?
  25. 25. Cluster
  26. 26. pm2
  27. 27. Finding the right libraries Q Bluebird

×