En el blog pronto tendremos una serie de entradas-tutorial acerca de Node JS por lo que en este post queremos aclarar algunas duda como lo primero que nos preguntamos ¿Que es Node JS ?.
De manera simple podemos decir que Node JS es un entorno de ejecución de JavaScript que se encuentra de el lado del servidor.
Node JS transformo algo que solo se ejecutaba en un navegador a algo que se puede ejecutar en una PC.
¿Que solución presenta Node JS?
Una de las características importantes es que cuenta con la capacidad de mantener muchas conexiones abiertas y esperando. Dispone de un Bucle de Eventos que permite la conexión asíncrona de cantidades enormes de clientes.
El objetivo de Node JS como ellos mismos lo definen es «crear aplicaciones network escalables». Esto debido a que no utiliza un modelo de concurrencia basado en hilos del Sistema Operativo.
¿Como funciona?
A diferencia del servicio web tradicional donde cada conexión genera un subproceso ocupando RAM y normalmente maximizando la cantidad RAM disponible, Node.js opera solamente un subproceso.
El nodo esta controlado por eventos, es decir el servidor consta de un subproceso que procesa un evento tras otro.
Al realizar una solicitud se genera un tipo evento, cuando hay una operación de bloqueo de entrada y salida, no espera hasta que se complete en su lugar crea una función de devolución de llamada. De esta manera no necesita crear mas subprocesos o cambiar entre subprocesos, esto se ve reflejado en poca sobrecarga.
Node ejecuta V8 JavaScript, pero ¿Que es V8? Es el motor JavaScript que Google usa en el navegador Chrome. Este motor interpreta el código y lo ejecuta. El V8 es un interprete ultra rápido escrito en C++, este motor se puede descargar e incorporarlo a cualquier aplicación.
Esta es una pequeña introducción Node JS estaremos realizando una serie de entradas sobre temas de Node JS, esperamos que les se ha de utilidad.