So this week I am starting a ‘super secret’ application, and for various reasons we have decided to develop this with node.js. In no particular order, here are some of my impressions and thoughts as I get my feet wet with node.js and some of its various frameworks.
First of all, if you have not used node before, know this: node is FAST! I mean, blow your socks off fast. I’m used to a J2EE app running in a JRun / Tomcat style context, and waiting for the various application frameworks and entities to get loaded up usually takes some time. Well, when you type ‘node app.js’, the app is running, instantly. Making requests to the page from your browser, they load *instantly*. Stop / restart the server, seems only limited by how fast you can type. I was curious and made some simple page returns from node, and ran a load tester against it. With no delay in my jMeter test, on my local development system, I was retrieving the root page of this node app at approx. 180 page requests / second, regardless of how many simultaneous users I sent in.
Now, not having worked with node before, I spent some time gathering resources online. One of my favorite so far is http://howtonode.org/. We have decided to use Express, an application development framework for node. You can get an express intro http://www.screenr.com/elL, and you can install using npm (the node package manager) with ‘npm install express’. Get more information about express from https://github.com/visionmedia/express/blob/master/Readme.md.