The Erlang way - dynamic upgrade of a server and UBF extensions
Wed Apr 30 15:26:42 CEST 2003
If I may drop my two-pence in this conversations, there are some things I
came to think about:
- the versioning problem is not UBF related. The same applies to any
client-server communication. Maybe a protocol_version-negotiating protocol
is needed, if there aren't any already.
- about sending IP addresses in packets: seems a bit heavy on the band...
And this also applies to communication between regular Erlang processes:
just replace "IP" with "Pid". Usually in Erlang process registration is not
too heavyweight, but already the global registration is on the edge to
become so, I think.
One way to solve this would be to take our own medicine: separate the
normal behaviour from the exceptional cases and let some kind of supervisor
process notify clients of a process that the Pid is no longer valid. In this
case the supervisor would be more of a proxy. Likewise, a server should not
try to do it's own load balancing, but let a specialized part of the system
handle this case too.
Just some quick thoughts, but maybe there lies something interesting here.
More information about the erlang-questions