Agenda
• What is Node JS?
• Why Node JS?
• Is it ready for enterprise?
Node JS
• Light weight event driven non – blocking IO model
• Will be helpful for building highly scalable web sites providing
real time data
• Not for CPU intensive processes. For example for batch
processing Node JS may not be the right solution
Why Node JS
• Node JS makes it easy to develop web applications.
• Reduces the development effort and cost considerably.
• Compare a sample shopping cart application using Node.js vs Java,
Node js application is at least 10 times smaller in size in terms of lines
of code.*
• Node js is also really fast.
• Maintaining a smaller application is easy and java script is very easy to
learn.
Node JS Application Architecture
Model
JSON/XML/J
ava Script
Objects
View
Html/CSS
Controller
Angular JS
scripts
User
Interactions
Express
Web Server
Server side
scripts
Other
services
MongoDB
Files
HTTP
Node JS Use cases
• Exposing API’s for your organization
• Real time trading app showing real time prices
Ready for Enterprise?
• Security
• Supports securing applications through https.
• Few Java script functions which has vulnerabilities but by avoiding them, highly secure
Node JS applications can be created.
• Scalability
• Node applications can be scaled by deploying them in multiple servers and allowing the
connections through load balancer.
• Node JS provides Cluseter API to use multiple cores of the server.
Database support
• In the web application, the data has to be stored and almost
all the databases are supported by Node js
• Mongo DB
• My SQL
• Oracle
Development support
• Debugging
• JSHint
• Unit testing
• Node JS has in built assert module for unit testing
• Mocha – light weight framework to test Node JS apps.
• Functional testing
• Tobi
• Soda
Production deployment
• Node JS acts as a server as well. So no need for a costly application server to
deploy your web application.
• Node modules like Forever and Uptime keeps the Node JS applications up and
running all the time even after server restarts and crashes.
• Static files can be served from different http server to improve the performance.
Nginx is open source server which can be used
Adopting Node JS
• Enterprises should start trying Node JS in not so critical applications first to start off
• Based on the learnings and results of these applications, decide whether to go
ahead with Node JS
• Already lot of big names are using Node js for enterprise like PayPal, Walmart etc.
Demo
• Shopping cart application

Node js for enterprise

  • 1.
    Agenda • What isNode JS? • Why Node JS? • Is it ready for enterprise?
  • 2.
    Node JS • Lightweight event driven non – blocking IO model • Will be helpful for building highly scalable web sites providing real time data • Not for CPU intensive processes. For example for batch processing Node JS may not be the right solution
  • 3.
    Why Node JS •Node JS makes it easy to develop web applications. • Reduces the development effort and cost considerably. • Compare a sample shopping cart application using Node.js vs Java, Node js application is at least 10 times smaller in size in terms of lines of code.* • Node js is also really fast. • Maintaining a smaller application is easy and java script is very easy to learn.
  • 4.
    Node JS ApplicationArchitecture Model JSON/XML/J ava Script Objects View Html/CSS Controller Angular JS scripts User Interactions Express Web Server Server side scripts Other services MongoDB Files HTTP
  • 5.
    Node JS Usecases • Exposing API’s for your organization • Real time trading app showing real time prices
  • 6.
    Ready for Enterprise? •Security • Supports securing applications through https. • Few Java script functions which has vulnerabilities but by avoiding them, highly secure Node JS applications can be created. • Scalability • Node applications can be scaled by deploying them in multiple servers and allowing the connections through load balancer. • Node JS provides Cluseter API to use multiple cores of the server.
  • 7.
    Database support • Inthe web application, the data has to be stored and almost all the databases are supported by Node js • Mongo DB • My SQL • Oracle
  • 8.
    Development support • Debugging •JSHint • Unit testing • Node JS has in built assert module for unit testing • Mocha – light weight framework to test Node JS apps. • Functional testing • Tobi • Soda
  • 9.
    Production deployment • NodeJS acts as a server as well. So no need for a costly application server to deploy your web application. • Node modules like Forever and Uptime keeps the Node JS applications up and running all the time even after server restarts and crashes. • Static files can be served from different http server to improve the performance. Nginx is open source server which can be used
  • 10.
    Adopting Node JS •Enterprises should start trying Node JS in not so critical applications first to start off • Based on the learnings and results of these applications, decide whether to go ahead with Node JS • Already lot of big names are using Node js for enterprise like PayPal, Walmart etc.
  • 11.