Olá pessoal, hoje vamos falar sobre Node.js. Você com certeza já deve ter ouvido falar ou lido em algum lugar sobre esta tecnologia, mas afinal de contas o que é Node.js?
O que é Node.js?
É uma plataforma construída sobre o motor JavaScript do Google Chrome para a construção de aplicações de rede rápidas e escaláveis. Nela é usado um modelo de I/O direcionada a eventos não bloqueante, o que a torna leve e eficiente, sendo assim ideal para aplicações em tempo real e distribuídas.
Qual problema o Node soluciona?
O objetivo número um estabelecido pelo Node é “fornecer uma maneira fácil para construir programas de rede escaláveis”.
Nas linguagens atuais mais usadas, como Java e PHP, cada conexão cria uma nova thread que potencialmente tem 2 MB de memória anexado. Isso limita o número máximo teórico de conexões concorrentes para cerca de 4 mil usuários em um sistema que tenha 8 GB de memória RAM. E se o número de usuários aumentar é necessário que haja Hardware mais potente.
A grande questão é a velocidade nas conexões e no tráfego. Node resolve isso trocando a maneira de como a conexão é tratada no servidor. A cada conexão, ao invés de se criar uma nova thread, é disparado um evento executado dentro da engine de processos do Node. O que leva Node a afirmar que nunca vai dar deadlock, já que não há bloqueios permitidos. E também a alegar que pode suportar dezenas de milhares de conexões simultâneas.
Instalando o Node.js
Agora que já sabemos do que se trata partamos para a prática.
O V8 JavaScript Engine, o interpretador JavaScript do Node, é totalmente multi-plataforma, o que facilita a instalação.
Para Iniciar acesse a página oficial do Node.js , clique em Install e siga as instruções.
Caso você esteja usando Windows, sugiro que procure um emulador de consoles como o CMDER, ou outro de sua preferência, para executar comandos semelhantes ao shell do linux.
Abra o terminal e dê o seguinte comando para certificar de que a instalação ocorreu com sucesso:
$ node -v > v0.13.0
Primeira aplicação ‘Olá Mundo!’
Crie uma pasta para seu projeto, em um lugar de sua escolha, e dentro dela crie um arquivo chamado olamundo.js, e dentro dele digite o seguinte código:
var http = require('http');
http.createServer(function(req,res) {
res.writeHead(200, { 'Content-Type': 'text/plain; charset=utf-8' });
res.write('Olá mundo!');
res.edn();
}).listen(3000);
console.log('Servidor iniciado!');
Para executar o programa volte ao terminal, acesse a pasta do seu projeto
cd pasta/projeto
e execute o seguinte comando:
$ node olamundo.js > Servidor iniciado!
Para visualizar seu programa vá ao seu navegador e acesse localhost:3000
Explicando o arquivo olamundo.js
Linha 1: Requisitando a biblioteca http que é nativa no Node;
Linha 2: Criando o Server, com os parâmetros request (req) para requisições, e response (res) para respostas;
Linha 3: Escrevendo o cabeçalho da página, informando que ela é do tipo texto plano, você pode usar também ‘text/html’ para dizer que se trata de texto HTML;
Linha 4: Escrevendo na tela;
Linha 5: Finalizando o response;
Linha 6: Informando porta da aplicação;
Linha 7: Informando que o servidor foi iniciado
É isso ai pessoal, por enquanto é só. Em breve voltarei com mais dicas sobre node.js
trocar linha res.edn();
para res.end();
res.end();