[ZODB-Dev] Re: ZEO and Twisted

Florent Guillaume fg at nuxeo.com
Tue Apr 25 09:28:00 EDT 2006


On 25 Apr 2006, at 15:23, Jim Fulton wrote:
> Florent Guillaume wrote:
>> [Ccing zodb-dev]
>> On 25 Apr 2006, at 15:09, David Pratt wrote:
>>>> 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?
>> 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  
>> well.
>> 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.
>
> (I'm mostly not paying attention to this thread but I have to speak  
> up.)
>
> 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  
> application's
> 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  
> main loops.
> Does Twisted?

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

-- 
Florent Guillaume, Nuxeo (Paris, France)   Director of R&D
+33 1 40 33 71 59   http://nuxeo.com   fg at nuxeo.com




More information about the ZODB-Dev mailing list