Is the cluster of node.js for cpu multi-core or for multi-server?

Just wonder the cluster of node.js is for cpu multi-core or for multi-server?

For the multi-core in the same cpu or multi-cpu in a same server, their communication speed is enough high to pub-sub.

But when the servers locate different place, how to gurantee the communication speed?

I mean when using cluster for node.js, what is difference of the 4 cases:

1.multi-core

2.multi-cpu in same server

3.servers in same local network

4.servers locate different place(different local network)

your comment welcome

  1. Multi-core on the same server.

If you want node processes on different servers to collaborate, you'll have to manage it yourself.