process_manager
v0.0.17
Published
LabJack-process_manager, just process_manager on npm. =======================
Downloads
26
Maintainers
Readme
LabJack-process_manager, just process_manager on npm.
A child process manager and IPC message passing tool for nodejs applications. Specifically created for the ljswitchboard project but can be used in any project that wants to send and receive messages between processes via process.send(yourData) and process.on('message', yourFunc). The more common way to pass these messages is via TCP sockets through localhost, however, ljswitchboard is a desktop application and will not need to scale between multiple servers at any point but needs to be optimized to handle multiple core computers. Doing so is out of the project's scope.
process_manager.js is a promise-oriented message passing library so that messages can be passed between processes asynchronously and have callbacks to those messages so that a send/receive system can be created. This library also breaks out the ability to emit any slave_process events so users aren't restricted to process.send only sending to the on('message') event listener. Users are able to do master_process.send('yourEvent',yourData) in the master process and slave_process.on('yourEvent', yourFunc). The inverse is also acceptable, so a slave can trigger the master to emit any event type and not just its on('message') listeners. Promises are provided by the "q" module on npm. The master_process also adds and removes message callback objects from a dict object provided by the "dict" module on npm. This may get changed in the future if using arrays or just objects is noticeably faster.