The Wayback Machine - https://web.archive.org/web/20151004175228/http://www.slideshare.net/dscape/production-ready-nodejs
Production Ready Node
Alice in Noderland
The Curious Case of Nodej(s)amin Button
$ whoami 
{ username: ‘@dscape’, 
past: ‘nodejitsu.com’, 
present: ‘yld.io’, 
much_excite: ‘open source’, 
dreams_in: JSON...
$ whoami 
{ username: ‘@dscape’, 
past: ‘nodejitsu.com’, 
present: ‘yld.io’, 
much_excite: ‘open source’, 
dreams_in: JSON...
$ watiznode4 
__________________________________ 
< node is more than just rest apis > 
----------------------------------...
How is node being used? 
Enterprise Startups and Hackers 
• (micro) Services 
• REST APIs 
• Message Queues 
• Fullstack W...
INTRODUCTION 
SUCH NODE. MUCH WOW
INTRODUCTION 
USE CASES 
Buy all that stuff you 
want directly from 
your phone. Node got 
you covered. 
Find where to go ...
INTRODUCTION 
TABLE OF CONTENTS 
• Frameworks 
• Structure 
• Setup 
• Testing & Coverage 
• Useful tools 
• Pre-productio...
FRAMEWORK 
WHAT TO CHOOSE
Structure
STRUCTURE 
MODULE
STRUCTURE 
COMMAND LINE TOOL
STRUCTURE 
WEB APP
STRUCTURE 
REST API
“Does it matter?”
Setup
SETUP 
CONFIGURATION FILES
SETUP 
CONFIGURATION FILES, TO AVOID
SETUP 
JSHINT
SETUP 
CODE STYLE
SETUP 
PRE COMMIT HOOKS
SETUP 
PRE COMMIT HOOKS (2)
SETUP 
BADGER BADGER BADGER MUSHROOM MUSHROOM
Testing
TESTING 
NODE ERROR HANDLING
TESTING 
COVERAGE CONTRACT
TESTING 
PERFORMANCE
TESTING 
PERFORMANCE (2)
TESTING 
PERFORMANCE
Pre-production checklist
$ shipit 
_____________________________ 
< nodejs production checklist > 
----------------------------- 
 ^__^ 
 (oo)_____...
PRE-PRODUCTION CHECKLIST 
OUTDATES MODULES
PRE-PRODUCTION CHECKLIST 
SECURITY SANITY CHECK
PRE-PRODUCTION CHECKLIST 
FREEZE YOUR DEPENDENCIES
Useful tools
USEFUL TOOLS 
JSONTOOL
USEFUL TOOLS 
ND
USEFUL TOOLS 
GHCOPY
USEFUL TOOLS 
NODE DEBUG
Running in Production
RUNNING IN 
PRODUCTION 
• pm2 vs forever vs mon 
• cluster vs mongroup 
• docker vs jenkins + chef vs PaaS 
• Managing the...
RUNNING IN 
PRODUCTION
RUNNING IN 
PRODUCTION 
• pm2 vs forever vs mon 
• cluster vs mongroup 
• docker vs jenkins + chef vs PaaS 
• Managing the...
@DSCAPE 
THANK YOU
Upcoming SlideShare
Loading in...5
×

NodeConf OneShot Budapest — Production Ready Node.js by Nuno Job

589

Published on

A tale on building stable node.js services with a focus on performance. We will discuss what we learned over the years running node in production, and what tools and processes we use to help customers with large production node.js services find bottlenecks in their applications..

Published in: Technology
1 Comment
0 Likes
Statistics
Notes
  • Be the first to like this

No Downloads
Views
Total Views
589
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
6
Comments
1
Likes
0
Embeds 0
No embeds

No notes for slide

NodeConf OneShot Budapest — Production Ready Node.js by Nuno Job

  1. 1. Production Ready Node
  2. 2. Alice in Noderland
  3. 3. The Curious Case of Nodej(s)amin Button
  4. 4. $ whoami { username: ‘@dscape’, past: ‘nodejitsu.com’, present: ‘yld.io’, much_excite: ‘open source’, dreams_in: JSON, node_modules: Number.MAX_VALUE }
  5. 5. $ whoami { username: ‘@dscape’, past: ‘nodejitsu.com’, present: ‘yld.io’, much_excite: ‘open source’, dreams_in: JSON, node_modules: ~40 }
  6. 6. $ watiznode4 __________________________________ < node is more than just rest apis > ---------------------------------- ^__^ (oo)_______ (__) )/ ||----w | || ||
  7. 7. How is node being used? Enterprise Startups and Hackers • (micro) Services • REST APIs • Message Queues • Fullstack Web Applications • Mobile • Enterprise Software • Internet of Things • Desktop Clients • Command Line Interfaces • Teaching • WebRTC • ROBOTS! • Bitcoin • Torrents • Databases
  8. 8. INTRODUCTION SUCH NODE. MUCH WOW
  9. 9. INTRODUCTION USE CASES Buy all that stuff you want directly from your phone. Node got you covered. Find where to go on your awesome vacation with proxies powered by the Nodes. Control your heating from your mobile using the awesome power of the Node.js force
  10. 10. INTRODUCTION TABLE OF CONTENTS • Frameworks • Structure • Setup • Testing & Coverage • Useful tools • Pre-production checklist • Running in production
  11. 11. FRAMEWORK WHAT TO CHOOSE
  12. 12. Structure
  13. 13. STRUCTURE MODULE
  14. 14. STRUCTURE COMMAND LINE TOOL
  15. 15. STRUCTURE WEB APP
  16. 16. STRUCTURE REST API
  17. 17. “Does it matter?”
  18. 18. Setup
  19. 19. SETUP CONFIGURATION FILES
  20. 20. SETUP CONFIGURATION FILES, TO AVOID
  21. 21. SETUP JSHINT
  22. 22. SETUP CODE STYLE
  23. 23. SETUP PRE COMMIT HOOKS
  24. 24. SETUP PRE COMMIT HOOKS (2)
  25. 25. SETUP BADGER BADGER BADGER MUSHROOM MUSHROOM
  26. 26. Testing
  27. 27. TESTING NODE ERROR HANDLING
  28. 28. TESTING COVERAGE CONTRACT
  29. 29. TESTING PERFORMANCE
  30. 30. TESTING PERFORMANCE (2)
  31. 31. TESTING PERFORMANCE
  32. 32. Pre-production checklist
  33. 33. $ shipit _____________________________ < nodejs production checklist > ----------------------------- ^__^ (oo)_______ (__) )/ ||----w | || ||
  34. 34. PRE-PRODUCTION CHECKLIST OUTDATES MODULES
  35. 35. PRE-PRODUCTION CHECKLIST SECURITY SANITY CHECK
  36. 36. PRE-PRODUCTION CHECKLIST FREEZE YOUR DEPENDENCIES
  37. 37. Useful tools
  38. 38. USEFUL TOOLS JSONTOOL
  39. 39. USEFUL TOOLS ND
  40. 40. USEFUL TOOLS GHCOPY
  41. 41. USEFUL TOOLS NODE DEBUG
  42. 42. Running in Production
  43. 43. RUNNING IN PRODUCTION • pm2 vs forever vs mon • cluster vs mongroup • docker vs jenkins + chef vs PaaS • Managing the life cycle of applications
  44. 44. RUNNING IN PRODUCTION
  45. 45. RUNNING IN PRODUCTION • pm2 vs forever vs mon • cluster vs mongroup • docker vs jenkins + chef vs PaaS • Managing the life cycle of applications
  46. 46. @DSCAPE THANK YOU
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×