PM2 is a free open source, advanced, efficient and cross-platform production-level process manager for Node.js with a built-in load balancer. It works on Linux, MacOS as well as Windows. It supports app monitoring, efficient management of micro-services/processes, running apps in cluster mode, graceful start and shutdown of apps.