[erlang-questions] Erlang nodes, connections and sockets

David Welton davidnwelton@REDACTED
Mon Mar 3 11:23:55 CET 2014


We have a question here about exactly how Erlang decides to send what
where, via which mechanisms.

We have a Java node J, and an Erlang node E.

J can make rpc calls to E without problems.  This always works.  J
opens an Erlang connection via JInterface, calls what it needs to, and
things are fine.

Sometimes E can send messages to J, seemingly utilizing the connection
that J opens when it starts up.

Sometimes J does *not* receive messages from E.  Initially we found
out that epmd was required and started working on implementing enough
of that to route requests through to a server socket on J

But it's important to know why it uses one connection over the other -
why does it sometimes decide to contact epmd, do a lookup, and open a
connection from E to J - and other times, simply use the existing,
open connection?

We haven't had problems like this with C nodes, although our node J
resides on a tablet that is not physically connected to E, so the
networking is not quite as fast/clean/robust, although it is a local
network and there should not be any huge problems.

David N. Welton



More information about the erlang-questions mailing list