¿Es un servidor web o un lenguaje de programación para scripts del lado del servidor?
¿Es un servidor web o un lenguaje de programación para scripts del lado del servidor?
Respuestas:
Desde el sitio web de Node.js
Node.js es una plataforma basada en el tiempo de ejecución de JavaScript de Chrome para crear fácilmente aplicaciones de red rápidas y escalables. Node.js utiliza un modelo de E / S sin bloqueo controlado por eventos que lo hace liviano y eficiente, perfecto para aplicaciones en tiempo real con uso intensivo de datos que se ejecutan en dispositivos distribuidos.
Controlado por eventos significa que el servidor solo reacciona cuando ocurre un evento. Esto nos permite crear aplicaciones de alto rendimiento, altamente escalables y en “tiempo real”.
Finalmente, este es probablemente el mejor artículo que te entusiasmará con Node.js
Directamente desde el node.js tag wiki, asegúrese de ver algunos de los videos de charlas vinculados allí para tener una mejor idea.
Node.js es un marco de E / S asíncrono basado en eventos que utiliza el motor JavaScript V8 de Google .
Node.js, o simplemente Node como se le llama comúnmente, se usa para desarrollar aplicaciones que hacen un uso intensivo de la capacidad de ejecutar JavaScript tanto en el cliente como en el servidor y, por lo tanto, se benefician de la reutilización del código y la falta de cambio de contexto.
También es posible utilizar marcos de JavaScript maduros como YUI y jQuery para la manipulación DOM del lado del servidor.
Para facilitar aún más el desarrollo de JavaScript complejo, Node.js es compatible con el estándar CommonJS que permite el desarrollo modular y la distribución de software en paquetes a través del Administrador de paquetes de Node .
Node.js es un tiempo de ejecución que compila y ejecuta javaScript. Se puede usar para desarrollar aplicaciones que se ejecutan de un extremo a otro en JavaScript, es decir, tanto el lado del cliente como el del servidor usan código javascript a diferencia de la mayoría de las aplicaciones actuales con un marco de cliente enriquecido (angularJs, extJs) y API de servidor RESTful
La Encuesta para desarrolladores de Stack Overflow es una buena fuente de información para que comiences esta investigación.
2017: https://insights.stackoverflow.com/survey/2017#most-popular-technologies
2016: https://insights.stackoverflow.com/survey/2016#technology-most-popular-technologies
¿Por qué diablos usarías Node.js?
https://medium.com/the-node-js-collection/why-the-hell-would-you-use-node-js-4b053b94ab8e
Donde Node.js realmente brilla es en la creación de aplicaciones de red rápidas y escalables, ya que es capaz de manejar una gran cantidad de conexiones simultáneas con un alto rendimiento, lo que equivale a una alta escalabilidad. Cómo funciona bajo el capó es bastante interesante. En comparación con las técnicas tradicionales de servicio web en las que cada conexión (solicitud) genera un nuevo subproceso, ocupando la RAM del sistema y, finalmente, maximizando la cantidad de RAM disponible, Node.js opera en un solo subproceso, utilizando I / sin bloqueo O llamadas, lo que le permite admitir decenas de miles de conexiones simultáneas (mantenidas en el bucle de eventos).
Node.js se usa exactamente para el desarrollo de back-end , pero también es popular como solución full-stack y front-end . Se utiliza principalmente para crear aplicaciones web, pero también es una opción muy popular para crear aplicaciones empresariales.
A los desarrolladores les gusta por su versatilidad, agilidad y rendimiento. Aumenta la productividad y el rendimiento de las aplicaciones de manera significativa. Dado que Node.js tiene un plan de soporte a largo plazo ( LTS ) que brinda seguridad y estabilidad, no es de extrañar que las grandes empresas lo agreguen constantemente a sus pilas.
No es bloqueante y está impulsado por eventos . Las aplicaciones de Node.js utilizan la arquitectura de " Modelo de bucle de eventos de subproceso único " para manejar varios clientes simultáneos. Estas características son factores clave para realizar aplicaciones web en tiempo real.
Node.js es una herramienta de línea de comandos de código abierto creada para el código JavaScript del lado del servidor.
Node.js es una plataforma basada en el tiempo de ejecución de JavaScript de Chrome para crear fácilmente aplicaciones de red rápidas y escalables.
Node.js utiliza un modelo de E / S sin bloqueo controlado por eventos que lo hace liviano y eficiente, perfecto para aplicaciones en tiempo real con uso intensivo de datos que se ejecutan en dispositivos distribuidos.
La filosofía básica de node.js es:
E / S sin bloqueo : cada llamada de E / S debe recibir una devolución de llamada, ya sea para recuperar información del disco, la red u otro proceso. Soporte integrado para los protocolos más importantes (HTTP, DNS, TLS) Nivel bajo. No elimine la funcionalidad presente en la capa POSIX. Por ejemplo, admite conexiones TCP medio cerradas. Transmita todo ; nunca fuerce el almacenamiento en búfer de datos.