Hola amigos. En esta publicación, aprenderá cómo administrar las aplicaciones de Node usando PM2. Aunque muchos desarrolladores ya deberían saber que gracias a PM2 podremos controlar la aplicación que ya hemos hecho usando NodeJS.
Introducción a PM2
Según el sitio web de PM2
PM2 es un administrador de procesos demonio que lo ayudará a administrar y mantener su aplicación en línea las 24 horas del día, los 7 días de la semana.
Entonces, la función principal de PM2 es administrar (iniciar, detener, verificar el estado) de una aplicación realizada en Node.
Además de esto, incluye una función que nos permite monitorear el funcionamiento de la aplicación. Donde podemos consultar logs, y metadatos de los mismos.
PM2 es una biblioteca gratuita capaz de manejar grandes cantidades de tráfico con un consumo de recursos realmente bajo. Esto lo hace ideal y necesario para que nuestros proyectos funcionen sin problemas en cualquier servidor.
Así que vamos a por ello. Después de esta publicación, debe tener los conceptos básicos sobre cómo usar PM2 y administrar su aplicación Node.
Instalar PM2 en el sistema
PM2 requiere el uso e instalación de Node. Entonces, el primer paso es instalar NodeJS en Linux.
Después de esto, con la ayuda de npm
puedes instalarlo
sudo npm install pm2 -g
Esto es suficiente para comenzar a usar PM2 en el sistema.
Administrar aplicaciones de nodo con pm2
Para iniciar una aplicación NodeJS usando PM2, debe ejecutar
pm2 start [initial-project-file]
Por ejemplo
pm2 start app.js
Una característica útil de PM2 es que podemos asignar un nombre al proceso que estamos iniciando con la aplicación.
Para hacer esto, debe seguir esta sintaxis
pm2 start app.js --name "my-app"

Así cuando tengamos que hacer alguna operación relacionada con nuestro proceso.
Una cosa que debe tener en cuenta es que si no asignó explícitamente un nombre al proceso cuando realiza el pm2 start
con el --name
opción, se le asignará un nombre de todos modos.
Si desea detener el proceso de su solicitud, debe ejecutar
pm2 stop [process-name]
O reiniciarlo:
pm2 restart [process-name]
Además, puede eliminarlo del registro del proceso.
pm2 delete [process-name]
Otras funciones de PM2
Si ejecuta el siguiente comando obtendrá una lista de todas las aplicaciones activas
pm2 list

Además de esto, se incluye información útil sobre ellos, como app name
, mode
, ID
, PID
. También puede averiguar cuánto tiempo ha estado funcionando y cuánta memoria se ha utilizado.
En el restart
columna se encuentra un contador con el número de veces que se ha reiniciado el proceso. Si el número aumenta, es una señal de que algo anda mal con la aplicación porque PM2 ha tenido que reiniciarla.
Este comando es bastante útil pero no nos muestra lo que está pasando internamente con la aplicación. Para ello, es importante consultar los logs
.
pm2 log

Este comando le mostrará los últimos registros y permanecerá activo, mostrando nuevos mensajes que los procesos envían como salida de la consola.
Otra función interesante es especificar el número de líneas para cuando tengamos demasiadas aplicaciones.
pm2 logs --lines 200
En este caso, solo mostrará hasta 200 líneas. Siéntase libre de modificar este valor.
Además, puede verificar los recursos (memoria, uso de CPU) que manejan las aplicaciones. Esto es posible con el comando
pm2 monit

Así de fácil es usar PM2.
Actualice PM2 a la última versión estable
Siempre es importante tener la última versión estable de PM2 para no perderse nuevas funciones. Para hacer esto, tienes que ejecutar
npm install pm2@latest -g
Y entonces,
pm2 update
para realizar una actualización de memoria.
Así que con esto tienes las utilidades básicas de PM2 pero recuerda que aún quedan muchas más.
Conclusión:aplicación de nodo con PM2
PM2 es una herramienta de trabajo para administrar aplicaciones de Node y en esta publicación, obtuvo una referencia rápida sobre cómo usarla de manera básica.
Entonces, disfrútalo.