Notes‎ > ‎

Node.js

Also see Web Developer Notes and George on Node (notes taken by George while learning Node from scratch)

WebSockets vs Ajax


WebSockets use 2 bytes to make a connection between client and server.
Ajax uses 8kb (8,192 bytes) just for the http header.

Ajax - 66 Mbps
10,000 clients polling every second
Network throughput is (871 x 10,000) = 8,710,000 bytes = 69,680,000 bits per second

WebSockets - 156 Kbps
10,000 frames every second
Network throughput is (2 x 10,000)/1 = 20,000 bytes = 160,000 bits per second


Node Applications that Don't Exist

Chat is not solved!

Realtime

Derby

Meteor

Derby vs Meteor

Another good comparison

Chat with multiple rooms

SocketStream

Charts
node, express, socket.io

Nodechat
node.js, backbone.js, socket.io, redis

Realtime pub/sub push service

RabbitMQ and Node on WebSockets

Realtime Polyglot webapp with Node, Ruby, MongoDB and Socket.IO

Ajax.org platform for building realtime webapps in Javascript

Authentication


Node Debugger


More debuggers

Deploy Node


Great tools for monitoring and deploying Node apps

Full deployment process flow

Comparison

Node vs. Ruby

Aggregators

Alexa-sorted by popularity Node sites

Getting Started

Node and Meteor on Windows

After installing Ubuntu according to that article:


Open Terminal
Alt+F2 then type gnome-terminal

If in KDE, type konsole instead of gnome-terminal


To install KDE

sudo su
apt-get install kubuntu-desktop


To install Chrome

apt-get install chromium ?


If glibc needs to be upgraded, see


Setup NPM
curl http://npmjs.org/install.sh | sh

Simple "Hello World"
See source on http://nodejs.org

Hello World in nodejs

Boilerplates to get started quickly

Docs

Node beginner's book

Node manual

Blogs

Node Bits
Node blog with sample node apps http://nodebits.org/tags/sample-app

How to Node

Felix's Node Guide

Node Tutorials

Modules

Grouped by category or popularity

Grouped by tags and popularity

NPM Docs

Nipster

Sorted by popularity

One-page

Frameworks

Database Drivers

mongodb
Most mature actively maintained MongoDB API by Christian Amor Kvalheim

node-db
Bindings for popular relational databases

Goal: Realtime Database GUI


Search for "mysql"

Realtime database updates

log.io
Real-time log monitoring in your browser

CSV Parsers

Parsing file uploads at 500mb/s

MySQL Dashboard?

Loggly Dashboard

Realtime with Node and Redis Pub/Sub

Dashboards

Graphene

Code:

Useful Node Libraries

20 awesome Node modules

NPM (Node Package Manager)

Terminal colors

Optimist
CLI (command-line interface) options parsing

Request
HTTP request module

Async
Asynchronous iteration

Vows
Asynchronous behaviour driven development testing library for Node

Winston
Logging

Stats

Integrates with Graphite

Node Apps

Calipso
WordPress and Drupal-like CMS built in node


Node.js Hosting

Ryan Dahl, creator of node.js, is maintaining a list of node.js hosts

Nodejitsu

Best-in-class Node hosting

Features

Handbook

Cheat sheet
Amazing team

Jitsu is built on core Nodejs libraries



Why is Nodejitsu the best?

Combination of culture and technical understanding and the right size. Forme they are similar to how heroku was for ruby before they got purchased by salesforce. They live and breathe node.js, whereas most of the others (heroku, vmware, microsoft and even joyent) have to balance multiple offerings. Nodester is a bit too small, but that will hopefully change. From a technical perspective (we are running a couple of instances onnodejitsu for months now) I am very impressed. Zero downtime so far, and agood API (we make extensive use of it).

To get access: hop onto the freenode channel #nodejitsu and ask one of the admins there. You should have access in no time.


Cure


Server-side JavaScript in five minutes. No compiling. Git Deployment. Node.JS, Express.JS, RailwayJS already compiled and configured. Nginx already configured and running on boot. CouchDB, MongoDB and Redis running on boot. CoffeeScript support for VIM, SSH port reassigned, and more. Deploy with git push.

Resources

Nodester


Deploy your Node.JS applications to Nodester.com for FREE or deploy your apps to your own private cloud instance of Nodester running in your own datacenter or on Amazon EC2, Rackspace, or GoGrid!

Heroku


No.de


How to


Comments