NodeJS, un polivalente framewok que podemos llevar muy fácilmente a Cloud

Dentro de las plataformas de desarrollo de propósito general, NodeJS es una de las opciones más extendidas en el front-end, ya que nos permite nos permite sacar Javascript fuera del contexto del navegador. Además, es un framework que podemos desplegar en sólo unos minutos desde el Catálogo de Aplicaciones de los Servidores Cloud. Todo ello, sin tener que lidiar con su instalación y la de sus repositorios.

Aunque quizá Python, PHP o Java se aproximen bastante a NodeJS, no podemos decir que sea un lenguaje propiamente dicho, ya que trabaja con Javascript. Podríamos decir, en cambio, que NodeJS es un framework, un marco de trabajo que nos permite un desarrollo acelerado de aplicaciones, ya que cuenta con muchas utilidades ya listas para usar en una variada gama de casos de uso. Además, cuenta con una gran comunidad que crea y publica paquetes de software como código abierto, adicionales al propio NodeJS, con los que se pueden implementar todavía muchas otras funcionalidades comunes en aplicaciones.

NodeJS usa el motor de Javascript de Google Chrome, denominado V8, lo que multiplica su potencial en el desarrollo de operaciones. Actualmente, se usa mucho NodeJS para el desarrollo front-end, como optimizador de aplicaciones web y para ejecutar tareas diversas que nos permitan mejorar los flujos de trabajo en el desarrollo en general.

NodeJS desde el servidor

En cuanto al uso de NodeJS como lenguaje del lado del servidor encontramos una gran cantidad de tareas importantes, desde la creación de webs con acceso a base de datos, gestión de contenido, etc. hasta la entrada salida mediante sockets. Quizás el uso más habitual en la actualidad sea la de creación de APIs REST, un modelo de trabajo común en las aplicaciones modernas, ya que nos permite una separación total de las capas de aplicación. Las APIs REST en general permiten el desarrollo de back-end independiente del lado front-end, pudiendo incluso crear varios tipos de frontales implementados sobre el mismo back-end, no solo para la web, sino también para desarrollo de apps para dispositivos.

Las características de NodeJS permiten un gran rendimiento en el lado del servidor, pudiendo atender a gran cantidad de usuarios con pocos recursos. La ejecución de código en Javascript es “no bloqueante”, lo que permite la ejecución de scripts de manera asíncrona, y estos no bloquean el flujo de la aplicación, liberando el proceso para atender otras solicitudes ante cualquier operación que requiera un tiempo de espera para completarse.

NodeJS ocupa un solo hilo de ejecución en las aplicaciones, por lo que el procesador y la necesidad de memoria del servidor no es muy exigente. En cambio esto hace que la escalabilidad de las aplicaciones deba proyectarse de otra manera en servidores con varios núcleos, creando varios procesos independientes que atienden a diversos tipos de operaciones, o creando réplicas de la aplicación ejecutándose en procesos diferentes.

Cómo llevar NodeJS a la Nube

En Arsys, podemos instalar y configurar NodeJS sobre un Servidor Cloud de una manera muy cómoda. Podemos seleccionar NodeJS  directamente en el Catálogo de Aplicaciones o en el proceso de creación del Servidor Cloud, ya en el propio Panel de Control de Cloudbuilder Next.  Cualquiera de las dos opciones nos ahorra la necesidad de lidiar con la instalación del propio NodeJs, su configuración y descarga de los repositorios más adecuados.

Hay que mencionar para las personas con menos experiencia que Apache no es imprescindible para trabajar con NodeJS, pues el propio framework es capaz de hacer de servidor web con muy poco código, pero sí nos puede ofrecer diversas ventajas configurado como proxy de las aplicaciones NodeJS. Una de las más obvias es la posibilidad de usar, en el mismo servidor, aplicaciones NodeJS junto con aplicaciones más tradicionales en otros lenguajes, o para servir ficheros estáticos con mayor eficiencia que NodeJS. Pero también nos sirve para implementar un mayor grado de seguridad y diversas utilidades de la gestión del protocolo HTTP que ya Apache gestiona perfectamente.

Dado que NodeJS necesita pocos recursos para comenzar, resulta especialmente interesante la posibilidad de empezar con un Servidor Cloud básico y ampliar sus recursos en caliente, lo que nos permite comenzar con un control de gasto apurado, sin tener que preocuparnos por migraciones en un futuro.

0 comentarios

Dejar un comentario

¿Quieres unirte a la conversación?
Siéntete libre de contribuir

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *