Paul Krill
Editor at Large

Node.js process manager set for 1.0 upgrade

news analysis
Sep 2, 20152 mins

Keymetrics' PM2 manages the popular server-side JavaScript platform, enhancing performance and helping developers maintain apps

man with many arms multitaskiing
Credit: Thinkstock

The open source project PM2, which serves as a production process manager for the Node.js programming language, is expected to reach release 1.0 in about a month.

Sponsored by Keymetrics, PM2 features capabilities such as a cluster mode, for scaling a Node.js or Node application across all available CPUs; monitoring of application resource usage; and log management and deployment.  

PM2 is mainly intended for keeping a Node website, application, or API online forever, enhancing performance, and helping developers maintain applications, said Alexandre Strzelewicz, author of PM2 and CEO at Keymetrics. PM2 also will work with io.js (a fork of Node.js) applications.

“Basically, PM2 will fork, monitor, and keep alive your processes,” Strzelewicz said. “If PM2 detects anomalies — memory limit reached, uncaught errors, memory corruption — it will gracefully reload your Node.js process.”

Currently on release 0.14.7, the upcoming 1.0 release will include a module system that leverages Node.js, Npm, and PM2, Strzelewicz said. “As you may know, Node.js is about JavaScript, the most widely known language among developers around the world. Node.js has the largest libraries ecosystem ever known, with over 175,000 libraries published,” said Strzelewicz. “All these libraries are stored on Npm, the package manager for Node.js. The idea is simple: We are going to add the Npm logic into PM2 — not to install libraries, but to install stand-alone Node.js software that will be managed by PM2.”

PM2 also is fitted for a microservices architecture. “For us, [a] microservice is separating the logic of a monolithic software into small applications subsets communicating together, in the same machine,” Strzelewicz said. “For example, at Keymetrics we separated the logic of our software into multiple services, one handling the API, one handling all PM2 connections, one handling the limitations, another processing reports.” To accommodate microservices, PM2 has capabilities such as application declaration and granular application management.

The software has been downloaded more than 2 million times, according to Keymetrics internal statistics. While PM2 is available and free to use, Keymetrics can augment production workflows in terms of monitoring and application management.

Paul Krill

Paul Krill is editor at large at InfoWorld. Paul has been covering computer technology as a news and feature reporter for more than 35 years, including 30 years at InfoWorld. He has specialized in coverage of software development tools and technologies since the 1990s, and he continues to lead InfoWorld’s news coverage of software development platforms including Java and .NET and programming languages including JavaScript, TypeScript, PHP, Python, Ruby, Rust, and Go. Long trusted as a reporter who prioritizes accuracy, integrity, and the best interests of readers, Paul is sought out by technology companies and industry organizations who want to reach InfoWorld’s audience of software developers and other information technology professionals. Paul has won a “Best Technology News Coverage” award from IDG.

More from this author