[erlang-questions] can nodes fail/recover too fast to be seen?
Jonathan Leivent
jleivent@REDACTED
Sat Jul 6 00:32:31 CEST 2013
On 07/05/2013 05:44 PM, Per Hedeland wrote:
> Jonathan Leivent <jleivent@REDACTED> wrote:
>>
>> On 07/05/2013 04:31 PM, Per Hedeland wrote:
>>> Jonathan Leivent <jleivent@REDACTED> wrote:
>>>>
>>>> OK - so it is TCP that saves the day. I'm not sure I want to be that
>>>> dependent on TCP, though.
>>>
>>> I'm not sure how to interpret that statement. If you mean
>>>
>>> - "I want to be able to use something other than TCP" - fine, as long as
>>> it provides the same guarantees, and you can figure out how to hook it
>>> into the Erlang distribution.
>>
>> I might want to use UDP in the future. Or, something that is just
>> slightly more than UDP - such as providing traffic control, but not
>> reliability. My app is supposed to be able to handle
>> lost/duplicate/unordered messages on is own - so much of what TCP
>> provides is redundant.
>
> So use UDP to send Erlang terms as binaries over plain sockets, gen_udp
> is a fine module. But don't try to implement Erlang distribution on top
> of UDP - some number of years from now you will at best have
> re-implemented TCP with characteristics that are significantly inferior
> to the real thing. Or you may have something that *isn't* Erlang
> distribution.
>
> --Per
>
The Erlang implementation is a reference implementation - so it will be
translated elsewhere, including to places where TCP has too much
overhead. I'm not trying to re-invent Erlang's distributed
infrastructure for Erlang. But, I might want to demonstrate that the
reference implementation, although in Erlang, can be ported elsewhere
without also having to port much of Erlang's infrastructure with it.
-- Jonathan
More information about the erlang-questions
mailing list