[erlang-questions] local vs. distributed differences?
Fri Apr 3 18:51:39 CEST 2009
On Apr 3, 2009, at 12:00 PM, Raoul Duke wrote:
> reading the McErlang stuff, i learned that message delivery order is
> only guaranteed when things aren't distributed. (looking around on the
> net, it i've heard that it is further only when you have multiple
> messages going from the same sender to the same receiver.)
> so it sounds like taking a multi-actor local system and then trying to
> scale out by moving to a bigger distributed system could turn up some
> interesting "bugs". what are people's experience with this?
> (and, as an aside, could the Erlang system be hacked to enforce
> ordering even in a distributed setup? would that ever be useful, or
> just silly?)
Here's my understanding:
Let's say P1 sends M1 and then M2 to P2. Regardless of whether P1 and
P2 run on different nodes, if P2 receives both messages, they are
guaranteed to arrive in the order they were sent.
Now let's say P1 sends M1 to P2 and M2 to P3. In this case, arrival
order is not guaranteed, even when P1 and P2 are on the same node.
Same goes for two processes sending messages to the same destination.
More information about the erlang-questions