TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

O Que é O Node.js

Exames: O Que é O Node.js. Pesquise 860.000+ trabalhos acadêmicos

Por:   •  8/6/2014  •  2.893 Palavras (12 Páginas)  •  343 Visualizações

Página 1 de 12

O que exatamente é o Node.js?

Um servidor pronto para codificar

O Node é um interpretador JavaScript do lado do servidor que altera a

noção de como um servidor deveria funcionar. Seu objetivo é possibilitar

que um programador crie aplicativos altamente escaláveis e escreva

código que manipule dezenas de milhares de conexões simultâneas em

uma, e somente uma, máquina física.

5 Comentários:

Michael Abernethy, Freelance Programmer, Freelancer

24/Jun/2013

Índice

Introdução

Se você ouviu do Node, ou leu artigos que proclamam como ele é maravilhoso, poderá

estar pensando: "Afinal, o que é Node.js?". Apesar de não ser para todos, o Node

pode ser a escolha certa para algumas pessoas.

Este artigo buscará responder o que é o Node.js resumindo o problema que ele pode

resolver, como ele funciona, como executar um aplicativo simples e, finalmente,

quando o Node é e quando não é uma boa solução. Ele não abordará como escrever

um aplicativo Node complicado nem será um tutorial completo sobre Node. A leitura

deste artigo o ajudará a decidir se você deverá buscar aprender Node para usar em

seu próprio negócio.

Que problema o Node soluciona?

O objetivo declarado do Node é "fornecer uma maneira fácil de criar programas de

rede escaláveis". Qual é o problema com os programas de servidor atuais? Vamos

fazer as contas. Em linguagens como JavaTM e PHP, cada conexão inicia um novo

encadeamento que, potencialmente, é acompanhado de 2 MB de memória. Em um

sistema que tenha 8 GB de RAM, isto define o número máximo teórico de conexões

simultâneas em cerca de 4.000 usuários. À medida que sua base de clientes cresce,

você deseja que seu aplicativo da Web suporte mais usuários e, portanto, será

necessário adicionar mais servidores. É claro, isso se soma a custos de negócios,

especificamente custos de servidor, custos de tráfego e custos de mão de obra.

Adicione a esses custos o problema técnico potencial de que um usuário poderá usar

diferentes servidores para cada solicitação, de forma que quaisquer recursos

compartilhados deverão ser compartilhados por todos os servidores. Por exemplo, no

Java, variáveis estáticas e caches precisam ser compartilhados entre as JVMs em

cada servidor. Este é o gargalo de toda a arquitetura de aplicativos da web, o número

máximo de conexões simultâneas que um servidor pode tratar.

O Node soluciona o problema mudando a forma como uma conexão é feita no

servidor. Em vez de iniciar um novo encadeamento do SO para cada conexão (e

alocar a memória correspondente com ele), cada conexão cria um processo, que não

requer que o bloco de memória o acompanhe. O Node alega que nunca ocorrerá um

impasse de bloqueios, pois não são permitidos bloqueios e ele não bloqueia

diretamente para realizar chamadas de E/S. O Node também alega que um servidor

que o execute pode suportar dezenas de milhares de conexões simultâneas. De fato,

o Node altera o panorama do servidor ao mudar o gargalo do sistema inteiro do

número máximo de conexões para a capacidade de tráfego de um único sistema.

Portanto, agora que você tem um programa que pode tratar dezenas de milhares de

conexões simultâneas, o que você pode de fato criar com o Node? Seria ótimo se

você tivesse um aplicativo da Web que exigisse tantas conexões. Este é um daqueles

problemas do tipo "se você tem esse problema, ele não é um problema". Antes de

chegarmos a isso, vejamos como o Node funciona e como foi projetado para ser

executado.

Voltar para parte superior

O que o Node definitivamente não é

Sim, o Node é um programa de servidor. No entanto, ele definitivamente não é como o

Apache ou o Tomcat. Esses servidores são produtos de servidor independentes,

prontos para instalar e implementar aplicativos instantaneamente. Você poderá ter um

servidor em execução em um minuto com esses produtos. O Node definitivamente não

é isso. O Apache pode adicionar um módulo PHP para permitir que os

desenvolvedores criem páginas da Web dinâmicas, e os programadores usando

Tomcat podem implementar JSPs para criar páginas da Web dinâmicas. O Node

definitivamente não é isso.

Neste momento inicial da vida do Node (atualmente na versão 0.4.6), ele não é um

programa de servidor pronto para ser executado, onde você espera instalá-lo, colocar

seus arquivos dentro dele e ter um servidor da Web totalmente funcional. Ele ainda

requer uma quantidade de trabalho não trivial para obter

...

Baixar como (para membros premium)  txt (19.8 Kb)  
Continuar por mais 11 páginas »
Disponível apenas no TrabalhosGratuitos.com