JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non- blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices. nodejs.org
in 2009 Node.js is a packaged compilation of Google's V8 JavaScript engine and a core library, which is itself primarily written in JavaScript Current stable version is 0.10.6
using for client side app. One language deployed everywhere Lets us share code between the browser and the backend It is event-based so it's like Ajax only server side It has low resource overheads It's fast. Really fast!
from posts where id = 1' ); doSomethingWithPost( post ); doSomethingElse(); Non-blocking I/O callback = function( post ) { doSomethingWithPost( post ) } db.query(' select * from posts where id = 1', callback ); doSomethingElse();
of tools code, frameworks, or libraries for talking to DB's etc Packages best managed with NPM Extensions written in C++ Used to extend the core functions available to Node.js Commonly used to write libraries for DB's etc
concurrent connections open Having same code server and client side Networking operations Real time applications Great for chat applications, polling applications like gmail, games servers, API's, API Gateways, proxy servers