title: Communication between N node.js processes
body: <p>So I have an app written in node.js. I run many instances of this app in the same server and specify their "id" with an argument when starting the app, like:</p>
  
  <pre><code>node app.js &lt;ID&gt;
  </code></pre>
  
  <p>I would like this app to receive messages from any other instance, and send messages to any other instance aswell.
  So each instance is "listening" messages on channel "<code>app&lt;ID&gt;</code>" and can send messages to any channel from "<code>app1</code>" to "<code>appN</code>".
  What is the best way to achieve this? A redis server and it's pubsub system? ZeroMQ or NSQ or similar solutions? Can socket.io be used?</p>