Веб-разработка Начинаем работать с Node.js в Ubuntu

Про Node.js, серверную реализацию языка javascript, написано уже много статей. Начиная от восторженных, заканчивая целиком и полностью критическими. Конечно, как и любой проект, Node.js имеет свои достоинства и недостатки, поэтому лучше применять его там, где он действительно будет полезен. Например, я не считаю целесообразным целиком и полностью писать всю серверную часть проекта на javascript, а в частности на Node.js. Просто потому, что для этого существуют более удобные решения на различных языках программирования. Но для части сервисов, которые будут использоваться в проекте, вполне можно использовать Node.js. Скажем, для реализации постоянного http-соединения с сервером (comet, long polling). Конечно, многие скажут, что необязательно использовать для этого Node.js. Впрочем, это дело каждого, какую технологию выбирать. Но в случае Node.js можно сказать, что он вполне себе успешно используется в качестве XMPP-сервера мгновенных сообщений у социальной сети «В контакте».

В общем, статья не о достоинствах и недостатках Node.js. Она про то, как максимально быстро и удобно начать работать с Node.js на Ubuntu, если мы до этого никогда не работали с ним.

В лучших традициях этого блога мы будем использовать пакетную установку Node.js вместо компиляции из исходников. Собственно, для этого нам потребуются 4 простые команды:

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs npm

С помощью этих команд мы установим актуальную стабильную версию Node.js. Теперь настало время испытать наш серверный javascript в деле. Для этого создадим обычный текстовый файл version.js с таким содержимым:

console.log(process.version);

Ну а далее все просто. Просто выполняем следующую команду, чтобы запустить нашу простейшую программу.

node version.js

Наша первая программа просто выводит в консоль текущую версию Node.js. На момент написания статьи это была версия 0.8.8.
Эта программа слишком простая. Гораздо интереснее запустить с помощью Node.js веб-сервер. На официальном сайте есть простейший пример кода, который позволит нам это сделать.

var http = require('http');
 
http.createServer(function (req, res) {
    res.writeHead(200, {
        'Content-Type': 'text/plain'
    });
    res.end('Hello World\n');
}).listen(1337, '127.0.0.1');
 
console.log('Server running at http://127.0.0.1:1337/');

Запускаем скрипт аналогичным образом, что и ранее:

node server.js
Server running at http://127.0.0.1:1337/

После чего мы можем подключаться к веб-серверу из браузера по адресу http://127.0.0.1:1337.

Эти простые скрипты — только вершина айсберга. Но таким простым способом можно установить Node.js на Ubuntu и познакомиться с ним. И перейти в дальнейшем к написанию более сложных скриптов, которые позволят работать с базой данных, организовывать TCP-соединения, поднимать XMPP-сервера и много других возможностей.