[erlang-questions] rpc is bad? (was Re: facebook chat server)
Ulf Wiger (TN/EAB)
ulf.wiger@REDACTED
Thu May 22 12:52:52 CEST 2008
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