Google Slide Presentation link
- Its a just a backend server build with C. JavaScript code can also run on the server.
- Which makes it as a bundle like ASP + IIS
- In simple terms it can be said as a Web Browser on a Server without a window object and has access to all stuffs on the computer like USB port, accessing the file system etc
- NodeJS is built on top of Chromium V8. Thats the same JavaScript engine which powers Google Chrome Browser and Opera Browser. So now you know why it is called as a Web Browser on a server
- Used by big companies like Microsoft, IBM, LinkedIn, PayPal. So NodeJS can be trusted
- Its OpenSource with a huge community working on it. I'm also a contributor.
- Best suitable for REST API
- Used for Analytics where huge number of IO can be processed
- Web Sockets for real time applications like gaming
- NodeJS can handle easily 10x times higher than PHP, Java, ASP etc.
- Its Extremely fast
- Non Blocking IO. Like traditional JAVA IO it will not wait till the thread pool is free
- The complete application is single threaded. No problem in dealing with multi threads
- Same code can be used in Server and Brower. Code duplication can be avoided.
- NPM is huge. I will tell what is npm in the demo
- All the code are straight forward. So easy to learn
- Uses a hell lot of CPU for doing a simple task. So complex operations like rendering are not recommended.
- Single threaded so large time consuming concurrent operations cannot be done
- Lots of computers now a days has multiple core like dual code, quad code, octa core. Since the complete application is single threaded, it uses only one core of the CPU.
- Its is not as robust as JAVA. So very sensitive data like bank transaction, airways ticketing is not recommended.
- NodeJS has reached its 1.0 version just 4 months ago so there are still lots of frameworks in BETA version
Explain with the diagram
- Sailsjs is MVC framework build for Nodejs
- Boiler plate code already created for a new project
- Comments are written all over the boiler plate code so easy to customize
- Best HTTP framework for nodejs 'Express' is used and it also uses Grunt a JavaScript task runner
- Moving to production is so easy. Sails take cares of all the work for us.
- Multiple database like MySQL, Postgresql, MongoDB, Redis are supported.
Explain from the slide