Spread should work nicely but I wouldn't ditch Pyro that easily either.
 Pyro works extremely well for this.  I know because we've been using
since it 2001 to implement many kinds of distributed processes
including one similar to what you're describing.  Our event management
system consists of a daemon, the event manager, and a client library.
Subscribers subscribe with the event manager by providing an event id
and a callback.  The callback is a pyro object with a "publish" method.
 When anybody publishes that event, the subscriber's callback gets
invoked.  Pyro includes an event manager in its distribution, which you
can start using within minutes.

Now, the reason this work so well with Pyro is because it's extremely
easy to add events and to format the event to be whatever you like
because Pyro will automatically and transparently, serialize the
objects you're sending as arguments.  For example, the publisher could
include several fully instantiated objects in the event, and the
subscribers will get them as fully functional objects wherever they are
executing on.  The whole distribution part is transparent and automatic
and you're 99% of the time just dealing with Python objects as if they
were local.

There are a few things that can't be pickled, such as sockets or
anything that can only exist in one system but almost everything else
is serializable and I guess eventually you'll want to learn and
understand how Pyro works internally in order to scale to production
environments,e.g., avoid leaking sockets, object name servers, high
availability, fault tolerance, etc.

I'm not saying you should use Pyro, but saying that events are not
remote objects doesn't seem to me like a good reason to pass on it.

--
Luis P Caamano
Atlanta, GA USA


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-developers
-~----------~----~----~----~------~----~------~--~---

Reply via email to