Table of Contents
4 administradores de procesos para aplicaciones Node.js en Linux
Un administrador de procesos de Node.js. es una herramienta útil para garantizar que un proceso o secuencia de comandos de Node.js. se ejecute continuamente (para siempre) y pueda habilitarlo para que se inicie automáticamente en el arranque del sistema.
Le permite monitorear los servicios en ejecución y facilita las tareas comunes de administración del sistema (como reiniciar en caso de falla, detener, recargar configuraciones sin tiempo de inactividad, modificar las variables/configuraciones del entorno, mostrar métricas de rendimiento y mucho más). También admite el registro de aplicaciones, la agrupación en clústeres y el equilibrio de carga, y muchas otras funciones útiles de gestión de procesos.
Lea también. 14 mejores marcos de NodeJS para desarrolladores en 2019
Un administrador de paquetes es útil especialmente para la implementación de aplicaciones Node.js. en un entorno de producción. En este artículo, revisaremos cuatro administradores de procesos para la administración de aplicaciones Node.js. en un sistema Linux.
1. PM2
PM2 es un administrador de procesos de código abierto, avanzado, rico en funciones, multiplataforma y el más popular en el nivel de producción para Node.js. con una carga incorporada balancín. Le permite enumerar, monitorear y actuar en todos los procesos Nodejs. iniciados, y es compatible con el modo de clúster.
Instalar PM2 para ejecutar aplicaciones Nodejs en Linux freestar.config.enabled_slots.push ( locationName: “tecmint_incontent”, slotId: “tecmint_incontent”);
Admite la supervisión de aplicaciones: ofrece una forma sencilla de supervisar el uso de recursos (memoria y CPU) de su aplicación. Es compatible con su flujo de trabajo de gestión de procesos al permitirle configurar y ajustar el comportamiento de cada aplicación a través de un archivo de proceso (los formatos admitidos incluyen Javascript. JSON. y YAML. .
Los registros de la aplicación son siempre clave en un entorno de producción, en este sentido PM2. le permite administrar fácilmente los registros de su aplicación. Proporciona diferentes formas y formatos para manejar y mostrar registros, respectivamente. Puede mostrar registros en tiempo real, eliminarlos y volver a cargarlos cuando sea necesario.
Es importante destacar que PM2. admite scripts de inicio que puede configurar para iniciar automáticamente sus procesos en los o reinicio inesperado de la máquina. También admite el reinicio automático de una aplicación cuando se modifica un archivo en el directorio actual o sus subdirectorios.
Además, PM2. viene con un sistema de módulos que permite a los usuarios para crear módulos personalizados para la gestión de procesos de Nodejs. Por ejemplo, puede crear un módulo para el módulo de rotación de registros o el equilibrio de carga, y mucho más.
Por último, pero no menos importante, si está utilizando contenedores Docker, PM2 permite la integración de contenedores y ofrece una API sistema que le permite usarlo programáticamente.
2. StrongLoop PM
StrongLoop PM es también un administrador de procesos de producción avanzado de código abierto para aplicaciones Node.js. con balanceo de carga integrado como PM2. y se puede utilizar a través de una línea de comandos o una interfaz gráfica.
StrongLoop PM Process Manager para Nodejs
Es compatible con la supervisión de aplicaciones (ver métricas de rendimiento como los tiempos de bucle de eventos, CPU y consumo de memoria), implementación de múltiples hosts, modo de clúster, reinicios y actualizaciones de aplicaciones sin tiempo de inactividad, reinicio automático del proceso en caso de falla y agregación y administración de registros.
Además, se envía con Docker. le permite exportar métricas de rendimiento a servidores compatibles con StatsD y verlas en consolas de terceros como DataDog. Graphite. Splunk y Syslog. y archivos de registro sin procesar.
3. Forever
Forever es una herramienta de interfaz de línea de comandos de código abierto, simple y configurable para ejecutar un script determinado de forma continua (para siempre). Es adecuado para ejecutar implementaciones más pequeñas de aplicaciones y scripts de Node.js. Puede usar para siempre. de dos formas: a través de la línea de comandos o incrustándolo en su código.
Forever Run Scripts Continuously
Te permite administrar (iniciar, listar, detener, detener todo, reiniciar, reiniciar todo, etc.) Node.js. procesos y admite la observación de cambios en los archivos, el modo de depuración, los registros de aplicaciones, la eliminación de un proceso y la personalización de la señal de salida, y mucho más. Además, admite varias opciones de uso que puede pasar directamente desde la línea de comandos o pasarlas en un archivo JSON.
4. SystemD-Administrador de servicios y sistemas
En Linux, Systemd es un demonio que administra los recursos del sistema, como los procesos y otros componentes del sistema de archivos. Cualquier recurso administrado por systemd. se conoce como unidad. Hay diferentes tipos de unidades. que incluyen servicio, dispositivo, enchufe, montaje, destino y muchas otras unidades.
Systemd. administra las unidades a través de un archivo de configuración conocido como un archivo de unidad. Por lo tanto, para administrar su servidor Node.js. como cualquier otro servicio del sistema, necesita crear para él un archivo de unidad, que en este caso será un archivo de servicio.
Una vez que haya creado un archivo de servicio para su servidor Node.js. puede iniciarlo, habilitarlo para que se inicie automáticamente en el momento del arranque del sistema, verificar su estado, reiniciar (detenerlo e iniciarlo nuevamente ) o recargar su configuración, e incluso detenerlo como cualquier otro servicio de systemd.
Para obtener más información, consulte: Cómo crear y ejecutar nuevas unidades de servicio en Systemd mediante el script de shell
Resumen
Un administrador de paquetes Node.js. es una herramienta útil para implementar tu proyecto en un entorno de producción. Mantiene una aplicación viva para siempre y simplifica la forma de controlarla. En este artículo, revisamos cuatro administradores de paquetes para Node.js. Si tiene alguna adición o pregunta que hacer, utilice el formulario de comentarios a continuación para comunicarse con nosotros.