[erlang-questions] Inter nodes messaging bottleneck

Eli Cohen <>
Wed Dec 11 12:42:00 CET 2013


Hi all,

I've reduced my scenario:
In the reduced scenario I have two nodes. On one node I have a process that
generates messages and banging towards a process located on "destination"
node.
The receiving process does nothing with the messages. No UDP activity at
all.
The result is similar - ~150K messages per second throughput limitation.

Hope it simplifies the case.

Please advice,
Thanks in advance.


2013/12/11 Valentin Micic <>

> > To remind you, when I'm moving the receiving machine - the throughput
> between the nodes is doubled. (which is still low, but it proves that the
> UDP sockets are not the bottleneck -
>
> Not sure what does "moving the receiving machine" mean and how does it
> prove that UDP sockets are not bottleneck.
> Care to elaborate?
>
> As for number of UDP sockets you're using: at some point you will face the
> curse of diminishing returns.
> In my view, assuming that you've written an ideal server (*) and have
> adequate receiving buffer sizes, a number of cooperating UDP sockets (e.g.
> sockets offering the same service) should not exceed the number of CPU's
> used by Erlang run-time (in other words number of Erlang schedulers).
>
> Could you share what kind of "socket activity" you're using with your
> server: {active, true}, {active, false} or {active, once}?
>
>
> V/
>
> (*) A server that has zero processing time.
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20131211/673b9b68/attachment.html>


More information about the erlang-questions mailing list