[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: A proposal for a General Clustering Framework
> IMO, IBM and Compaq both Got It Right when they
> put an generalized pub/sub event system in the middle
> of their cluster frameworks.
A generalized event system is a great idea, but I'm not sure that "pub/sub"
belongs in the middle of the cluster framework. One of the most critical
functionalities for a cluster infrastructure is agreement on which of
several events (which may be merely symptoms of a single actual failure) to
process first. That process is difficult enough when everyone agrees on the
list of candidates. At this level, there should be no subscription
requirement; all nodes should get all events, period. That sort of
filtering belongs at what I'd call the top of the framework, not the middle.
> FWIW, xml-rpc is a perfectly fine mechanism for such
> an event system, once you get the subscription mechanism
> in place. You probably also want more authentication and
> authorization than is used on things that assume private
> networks for cluster traffic.
I'm afraid you (all) will have to forgive me some of my biases. I spent a
lot of time developing protocols for this kind of thing, in code that was
later credited to IBM. One conclusion I reached during that work is that
*RPC is evil* as soon as you depart from the two-party request-response
model for which it was designed. Yes, yes, I know you can do broadcast RPC
and stuff, but that's just a collection of two-way conversations and
fundamentally different than the sort of true multi-way conversation you
need for cluster stuff. XML is fine as a representation, and XML-RPC might
be fine as part of a top-level notification API, but deep down in the guts
of things I think all flavors of RPC should be avoided.
Linux-cluster: generic cluster infrastructure for Linux
Archive: http://mail.nl.linux.org/linux-cluster/