Eu ouvi muito e li sobre a linguagem do lado do servidor Javascript, ou seja, o Node.js, e vi muitas comparações a favor do Node.
Não entendo o que a torna melhor ou mais rápida, ou como ela se relaciona com algo tão maduro quanto os Java Servlets.
Mas os Servlets são criados sobre uma linguagem de programação multithread, em oposição ao Node.js. Então, como o node.js pode ser mais rápido?
Se suponha que os usuários de 1000K consultem os registros de um banco de dados, o Node.js não deve ser mais lento que os Servlets.
Os servlets também não têm melhor segurança em comparação com o Node.js.
javascript
java-ee
node.js
log N
fonte
fonte
Respostas:
Você está misturando maçãs e laranjas, mais ou menos.
Servlets (ou herdados do HttpServlet) permitem acessar parâmetros de solicitação HTTP e responder com alguma coisa, via (ou em cima de) uma implementação de servidor HTTP existente.
Embora esteja usando o Javascript como idioma, o Node.js está em um nível inferior a esse. Começa com a implementação do servidor HTTP. No entanto, você pode continuar fazendo coisas de alto nível, como aplicativos da web.
Sobre multiencadeamento, não é necessário. Os servidores Node.js. não são mais rápidos por causa do multiencadeamento, são mais rápidos porque não bloqueiam solicitações de E / S, para que possam continuar bombeando-os na fila enquanto fazem outras coisas. Eles só funcionam quando há trabalho a ser feito - eles não esperam por isso - e isso causa um sério aprimoramento de desempenho, como se viu.
Quanto às consultas ao banco de dados, trata-se realmente mais de restrições no modelo e na API do banco de dados do que no cliente.
Quanto à segurança - é realmente um tópico diferente e, em última análise, está nas mãos de qualquer desenvolvedor, não tanto na biblioteca.
fonte