pm2 - Node.js Production Process Manager with a built-in Load Balancer

  •        72

PM2 is a production process manager for Node.js applications with a built-in load balancer. It allows you to keep applications alive forever, to reload them without downtime and to facilitate common system admin tasks.PM2 is constantly assailed by more than 1800 tests.

  • Simple and efficient process management (start/stop/restart/delete/show/monit)
  • Keep your application ALWAYS ONLINE with auto restarts and init system script generation
  • Clusterize Node.js Applications without code change to increase performance and reliability
  • Hot Reload Node.js Applications without extra configuration

http://pm2.io/
https://github.com/Unitech/pm2
http://pm2.keymetrics.io/

Tags
Implementation
License
Platform

   




Related Projects

strong-pm - deployer for node applications


StrongLoop PM is a production process manager for Node.js applications with built-in load balancing, monitoring, multi-host deployment, and a graphical console.Under production, you will install the process manager as a system service, see http://strong-pm.io/prod, but if you are just trying the manager out locally, you can run an app directly from the command line.

pm2-web - A web based monitor for PM2


Since it's no longer possible to monitor pm2 running on multiple machines I'm not really working on pm2-web any more. For an alternative, check out Guvnor - a process manager with support for multiple hosts, unix based permissions, a far more capable web interface and more.

pm2-gui - An elegant web & terminal interface for Unitech/PM2.


An elegant web & terminal interface for Unitech/PM2.If you wanna update to pm2-gui@latest, make sure you've read the change logs.

syn - A global Process Registry and Process Group manager for Erlang.


Syn (short for synonym) is a global Process Registry and Process Group manager for Erlang. A global Process Registry allows registering a process on all the nodes of a cluster with a single Key. Consider this the process equivalent of a DNS server: in the same way you can retrieve an IP address from a domain name, you can retrieve a process from its Key.


Deploy Workflow Manager


Kick off a workflow associated with a SharePoint List on all list items at once. SharePoint Designer Workflows will also be included. This project assumes criteria is included in the Workflow. Critera through the Workflow Manager is still in process.

eye - Process monitoring tool. Inspired from Bluepill and God.


Process monitoring tool. Inspired from Bluepill and God. Requires Ruby(MRI) >= 1.9.3-p194. Uses Celluloid and Celluloid::IO. We wanted something more robust and production stable.

hotel - :love_hotel: A simple process manager for developers


Tip: if you don't enable local domains, hotel can still be used as a catalog of local servers..localhost replaces .dev local domain and is the new default. See https://ma.ttias.be/chrome-force-dev-domains-https-via-preloaded-hsts/ for context.

einhorn - Einhorn: the language-independent shared socket manager


Let's say you have a server process which processes one request at a time. Your site is becoming increasingly popular, and this one process is no longer able to handle all of your inbound connections. However, you notice that your box's load number is low.So you start thinking about how to handle more requests. You could rewrite your server to use threads, but threads are a pain to program against (and maybe you're writing in Python or Ruby where you don't have true threads anyway). You could rewrite your server to be event-driven, but that'd require a ton of effort, and it wouldn't help you go beyond one core. So instead, you decide to just run multiple copies of your server process.

Circus - A Process & Socket Manager


Circus is a process & socket manager. It can be used to monitor and control processes and sockets. Circus can be driven via a command-line interface or programmatically through its python API.

hivemind - Process manager for Procfile-based applications


Hivemind is a process manager for Procfile-based applications. At the moment, it supports Linux, FreeBSD, and macOS. Procfile is a simple format to specify types of processes your application provides (such as web application server, background queue process, front-end builder) and commands to run those processes. It can significantly simplify process management for developers and is used by popular Platforms-as-a-Service, such as Heroku and Deis. You can learn more about the Procfile format here or here.

overmind - Process manager for Procfile-based applications and tmux


Overmind is a process manager for Procfile-based applications and tmux. With Overmind, you can easily run several processes from your Procfile in a single terminal. Procfile is a simple format to specify types of processes your application provides (such as web application server, background queue process, front-end builder) and commands to run those processes. It can significantly simplify process management for developers and is used by popular hosting platforms, such as Heroku and Deis. You can learn more about the Procfile format here or here.

procodile - 🐊 Run processes in the background (and foreground) on Mac & Linux from a Procfile (for production and/or development environments)


Running & deploying Ruby apps to places like Viaduct & Heroku is really easy but running processes on actual servers is less fun. Procodile aims to take some the stress out of running your Ruby/Rails apps and give you some of the useful process management features you get from the takes of the PaaS providers. Procodile is a bit like Foreman but things are designed to run in the background (as well as the foreground if you prefer) and there's a supervisor which keeps an eye on your processes and will respawn them if they die.

timeout - A script to measure and limit CPU time and memory consumption of black-box processes in Linux


The timeout script is a resource monitoring program for limiting time and memory consumption of black-boxed processes under Linux. It runs a command you specify in the command line and watches for its memory and time consumption, interrupting the process if it goes out of the limits, and notifying the user with the preset message. The killer feature of this script (and, actually, the reason why it appeared) is that it not only watches the process spawned directly, but also keeps track of its subsequently forked children. You may choose if the scope of the watched processes is constrained by process group or by the process tree.

FLoM - Free Lock Manager


FLoM is a free, open source, distributed lock manager that can be used to synchronize shell commands, scripts and custom developed C, C++, Java, PHP and Python software. When used in a shell environment, FLoM manages process serialization in the same way "nice" manages process prioritization.

Scripted Deployment of a System Center 2012 Configuration Manager Secondary Site


In System Center 2012 Configuration Manager, you can no longer deploy a secondary site server using Setup (wizard or scripted). Instead, you must use the Configuration Manager console to create a new secondary site. This is less than ideal if you want to deploy several secon...

babel-watch - Reload your babel-node app on JS source file changes. And do it fast.


Reload your babel-node app on JS source file changes. And do it fast. If you're tired of using babel-node together with nodemon (or similar solution). The reason why the aforementioned setup performs so badly is the startup time of babel-node itself. babel-watch only starts babel in the "master" process where it also starts the file watcher. The transpilation is performed in that process too. On file-watcher events, it spawns a pure node process and passes transpiled code from the parent process together with the source maps. This allows us to avoid loading babel and all its deps every time we restart the JS script/app.

kube-cert-manager - Manage Lets Encrypt certificates for a Kubernetes cluster.


This is not an official Google Project.The secrets created by the Kubernetes Certificate Manager can be used to configure any TLS terminating load balancer.

circus - A Process & Socket Manager built with zmq


A Process & Socket Manager built with zmq

Process Manager


Process Manager is a simple program that allows you to view all currently running processes, effectively kill any of them, and start new ones.