[erlang-questions] An Erlang like DNS service
Wed Dec 9 13:05:21 CET 2009
For a global registry other than DNS, handle.net of CNRI has been
popular for numbering academic publications (DOI identifier uses a part
of handle.net namespace):
BTW can a pid be globally unique? (or has that large numbering space?)
Just a little thought.
In the message <9b08084c0912090135u4ce2db57i7a80cdad67c7cf58@REDACTED>
dated Wed, Dec 09, 2009 at 10:35:31AM +0100,
Joe Armstrong <erlang@REDACTED> writes:
> An Erlang DNS "like" facility
> I want something like dynamic DNS.
> How could be extend process registration to work outside
> the scope of a single Erlang node?
> (And I'm not talking distributed Erlang here).
> Let's suppose I have a program running on my machine
> I want my friends to be able to send messages to it.
> In my program all I'd like to say:
> dynamic_register(MyName, self())
> MyName would be a logical name.
> My friend could say:
> Pid = dynamic_whereis(Name)
> To find out where the process is.
> This registration should survive as long as the process is alive. I
> should be able to link to and send mesaages to Pid.
> Having got a Pid I just want to say Pid ! Message and I want the
> message to be delivered to the registered process.
> Just as in DNS I guess this necessitates some form of administration -
> we don't want wild "address squatting" etc we need some certificates
> so we can prove who we are and so on.
> I think such a facility would be very useful, but it raises a whole
> lot of technical questions - how would you implement this?
> I guess there needs to be some integration with DNS then some deep
> magic in the port mapper daemon and some ipchains magic also some
> STUN/NAT traversal stuff.
> I view this not so much as a "killer application" but as a "killer enabler"
> just as DNS is the killer enabler for millions of applications.
More information about the erlang-questions