¿Qué es un servidor node.js en pocas palabras?

Aquí está mi opinión: si toma el navegador Chromium (Chrome de código abierto), extraiga el motor de JavaScript (es un proyecto separado llamado V8), extienda JavaScript de acuerdo con las especificaciones de CommonJS (http://www.commonjs.org) y agregue un lanzador de línea de comandos y un intérprete interactivo (REPL) esto es lo que se llama node.js.

Apache es un servidor web en sí mismo, node.js es un intérprete CommonJS de alto rendimiento adecuado para escribir aplicaciones de red de alto rendimiento, incluidos los servidores web. Puede ejecutarse junto a Apache para algunas tareas específicas como chats basados ​​en cometas o algo así. Si tiene un sitio web existente en Python, por ejemplo, node.js no es la opción para moverse de Apache.

Por ejemplo, estoy usando node.js para una funcionalidad de juego multijugador basada en tcp \ ip en el lado del servidor. Sin http en absoluto, todo lo que uso básicamente es el bucle de eventos de V8, las bibliotecas de node.js y una biblioteca de terceros para mongoDB conectada con mi propia lógica.

En resumen: node.js es una herramienta solo para aquellos que saben exactamente por qué la necesitan.

Un problema al responder esta pregunta es que Node.js es más como una caja llena de ladrillos de lego. Puedes construir lo que quieras con él, incluida la construcción de los ladrillos de lego en gigantescos ladrillos de lego para que puedas construir una réplica a tamaño completo de un Destructor Estelar construido con ladrillos de lego. Poco me estoy desviando. Lo que quiero decir es que puede usar Node para crear una aplicación front-end, servidores back-end, aplicaciones full stack o cualquier otra cosa. Hay servidores de correo o bases de datos construidas con él. Si coloca un servidor web frente a él o no, depende de sus elecciones arquitectónicas.

Hay un buen artículo sobre él http://debuggable.com/posts/unde