- Need to maintain persistent connection between browser back to the server. In other words, it is best suited for real-time applications such as online games, collaboration tools, chat rooms, or anything where what one user does with the application needs to be seen by other users immediately, without a page refresh.
- Best suited for the cases where the code might block due to threads. Refer non-blocking IO model of node.js. Refer the diagram below.
Following are some of the good references for understanding node.js:
- Backbone.js: Following is definition of backbone.js from their website (http://www.backbonejs.org/):Backbone.js gives structure to web applications by providing models with key-value binding and custom events, collections with a rich API of enumerable functions,views with declarative event handling, and connects it all to your existing API over a RESTful JSON interface.
Following are some of the good references for understanding backbone.js: