[erlang-questions] How does running nodes() on host knows about all connected nodes?

Mihai Balea mihai@REDACTED
Tue Jan 20 15:03:10 CET 2015


> On Jan 19, 2015, at 12:10 PM, Harit Himanshu <harit.subscriptions@REDACTED> wrote:
> 
> 
> I have a server (gru) and 3 minions talking to gru. But none of the minions ever talked to each other.
> 
> Still when I run nodes() on any of the minions tells me which other minions are connected.  
> 
> How does this process work? What's going on behind the scenes?

When a node connects to another node in a running cluster, it gets a list of nodes already in the cluster. It then establishes connections to every one of them automatically. You end up with a fully connected mesh. That is the default behavior, and the reason why large erlang clusters become problematic (n*n connections). There are ways to override this behavior at a loss of some functionality.

Mihai




More information about the erlang-questions mailing list