Percebi que o Node.js se tornou muito popular e já vi várias instâncias de pessoas fazendo projetos de pequena escala.
Também examinei as listas de prós e contras para ter uma idéia do que o Node.js pode fazer, mas ainda não estou claro como ele difere de outras tecnologias mais maduras do lado do servidor, como PHP, Perl ou Ruby no Trilhos.
O que, especificamente, diferencia o Node.js das alternativas atuais e por quê?
web-development
comparison
node.js
Saeed Neamati
fonte
fonte
Respostas:
Há duas coisas importantes que tornam o Node.js diferente das estruturas existentes do lado do servidor, eventos assíncronos e o uso de JavaScript como linguagem de programação.
Eventos Assíncronos
Enquanto a maioria das estruturas existentes do lado do servidor usa uma arquitetura síncrona, o Node.js usa uma arquitetura assíncrona , com a qual o JavaScript pode lidar bem. Isso significa que o servidor reage a eventos e envia eventos (mensagens) para, por exemplo, o banco de dados. Esse estilo de programação é muito diferente de um estilo síncrono e pode ser difícil de usar com outros idiomas. O Node.js emprega um estilo assíncrono com E / S assíncronas e pode ser bem dimensionado.
Veja também Arquitetura Orientada a Eventos
Javascript
JavaScript é a linguagem de programação que os aplicativos da web estão usando no cliente. Usar o mesmo idioma no lado do servidor significa que o desenvolvedor pode aplicar seu conhecimento de JavaScript no cliente e no servidor e usar as mesmas funções necessárias.
Eu recomendaria a apresentação Introdução ao Node.js. com Ryan Dahl, onde ele explica a arquitetura orientada a eventos do Node.j em mais detalhes.
fonte
async
, isso pode mudar. O problema não é que você não pode escrever código assíncrono escalonável em outros idiomas; é mais difícil fazê-lo (corretamente) sem um bom suporte no nível do idioma.É diferente porque é orientado a eventos . Isso torna o servidor altamente escalável.
Em poucas palavras;
Modelo de Rosca
Modelo de Evento
fonte
Session_Started
ouContext_Authenticated
ouPage_Load
?Eu tenho a impressão de que sua popularidade se deve ao uso de JavaScript. Como muitos desenvolvedores da Web conhecem JavaScript, é um ponto de venda que agora eles podem desenvolver código do lado do servidor usando o mesmo idioma. Isso tem algumas vantagens em que consigo pensar:
fonte