[erlang-questions] rpc is bad? (was Re: facebook chat server)

Hal Snyder <>
Thu May 22 18:00:36 CEST 2008


RPC gives me the same uneasy feeling as NFS (at least the early  
versions). NFS had a tendency to introduce single points of failure  
into a reliable system and to turn small failures into large ones; a  
clear sign that you're doing something at the wrong layer.

Of course there are still times when both are nice to have around.

Hal

On May 22, 2008, at 5:52 AM, Ulf Wiger (TN/EAB) wrote:

> Steve Vinoski skrev:
>>
>> What all those years of CORBA taught me, BTW, is that RPC,
>> for a number of reasons, is generally A Really Bad Idea.
>> Call it a hard-won lesson. The Erlang flavor of RPC is
>> great because the entire Erlang system has distribution
>> fundamentally designed and built into it, but for normal
>> languages, RPC creates more problems than it solves.
>>
>> --steve
>
> This is certainly something that I'd love to see you expand
> in a blog article. Specifically, I'd like to hear your views
> on what the better alternative would be.
> (No touch of sarcasm - I'm genuinely interested.)
>
> One of these days, I'll try to write some understandable
> documentation for my VCC code (version-controlled channels,
> http://svn.ulf.wiger.net/vcc/trunk/vcc/SPECIFICATION.txt).
>
> This is basically a more complex version of Joe's lib_chan,
> with support for automatic transformation of data between
> nodes running different versions, and at least the
> ambition to also support non-Erlang peers.
>
> The non-Erlang allowances are a 32-bit aligned framing protocol
> per-channel encode/decode and an XML-based meta protocol.
>
> For Erlang-to-Erlang, it could be used to cleanly separate
> communication for different applications, and could offer
> a reliable way to perform redundancy upgrade, install
> contract checkers, etc.
>
> The channels have asynchronous semantics, but - partly inspired
> by Haskell - you can send a message on a temporary channel
> (using an existing channel as template), and optionally have
> it automatically removed when the other side has sent a
> reply.
>
> I'd love to receive feedback, or even better: volunteers to
> help finish it. It's been gathering dust for a while, but
> I keep coming back to the conclusion that it would be very
> useful.
>
> BR,
> Ulf W



More information about the erlang-questions mailing list