nodejs - это платформа разработанная на основе V8 (Chrome
JavaScript Runtime).
Платформа разрабатывалась с главной целью улучшить скорость разработки, и возможности масштабирования сетевого решения.
Он прост, лёгок, и отличный выбор для мощных real-time сетевых приложений.
Язык:
JavaScript.
Язык для разработки Модулей:
C / C++ / JavaScript.
Это молодой инструмент, но на столь мощный и своеобразный, что уже имеет огромное сообщество, конференции и тренинги, также крупные компании используют nodejs для своих проектов, где классические решения проигрывают многократно.
Основное отличие nodejs как серверного решения заключается в парадигме программирования - event-driven.
По сути это JavaScript с кучей callback'ов. Т.к. большинство задачь выполняются асинхронно, то это минимизирует задержку главного потока для ожидания например пока жётский диск читает файл или пока приложение записывает в базу данных документ. Таким образом нету никаких проблем с синхронизацией потоков или других проблем "простоев".
Для разработки сетевых игр нацеленных на web аудиторию, nodejs как серверное решение - отличный выбор, т.к. позволяет разрабатывать клиент и сервер на одном языке, что даёт возможность использования кода с обеих сторон.
Полезные ссылки:
Список компаний и проектов.
npm - менеджер модулей. Помогает легко и просто из командной строки устанавливать новые модули.
socket.io - модуль для работы с WebSockets протоколом с fallback'ом в LongPoll. Для создания двусторонней real-time коммуникации сервера с клиентом.
express - веб фреймворк позволяющий удобно и просто управлять route'ом и разрабатывать классическое веб приложение.
Огромный список модулей (на любой вкус)
Интересные примеры:
BrowserQuest - MMORPG, экспериментальный проект при поддержке mozilla. Сервер написан полностью на nodejs.