On 25 Apr 2006, at 15:23, Jim Fulton wrote:
Florent Guillaume wrote:
On 25 Apr 2006, at 15:09, David Pratt wrote:
Huh, I thought you were talking about the ZEO client,
ClientStorage, not the ZEO server.
For the ZEO server I don't see the point of changing it, it works
OTOH a ClientStorage has to integrate with the other servers in
Zope, and that's the one that would benefit from being moved to
the twisted event loop if twisted is used.
The protocol is simple yes, but the iteractions w.r.t threading
are sometimes subtle.
Hi Florent. This could be set up using a twisted's application
object so that you have a twisted app using a twisted .tac. I
guess this could still use the .conf as in this but twisted
already has a means of daemonizing its services with twisted.
This would give you something like this to start up zeo.
twistd -y zeo.tac
What are your thoughts?
(I'm mostly not paying attention to this thread but I have to speak
I disagree. ZEO should not be dependent on an application main loop
at all. It was a mistake to couple ZEO's networking at an
asyncore main loop. This *greatly* complicated ZEO's implementation.
I'd much rather that ZEO's networking be independent of
an application. Fortunately, asyncore allows multiple independent
When I propose to move it to the twisted event loop, I mean refactor
it so that you can plug it into whatever main loop you want, with
nice entry points.
Today the code that has to switch depending on whether TheadedAsync
is available or not, for example, is horrible.
Florent Guillaume, Nuxeo (Paris, France) Director of R&D
+33 1 40 33 71 59 http://nuxeo.com [EMAIL PROTECTED]
For more information about ZODB, see the ZODB Wiki:
ZODB-Dev mailing list - ZODB-Dev@zope.org