[ZODB-Dev] Zope Xron with ZEO?

Jim Fulton jim@digicool.com
Fri, 06 Apr 2001 12:10:43 -0400


Michel Pelletier wrote:
> 
(snip)
> > I think you only want one Dispatcher thread in the whole ZEO system.
> 
> I think you only want one Dispatcher ZEO client dedicated to being Xron.
> You don't even need threads any more.  In fact, it doesn't even need to
> run Zope, it just needs to interface ZEO with a ClientStorage, but you
> probably want the rest of Zope around, of course, so that you know what a
> Catalog is, for example. 

You need the Zope application classes, but you don't need
ZServer, or a web server.


> I'd probably run zope, but the idea of removing
> threading issues is apealing.  The idea in the first place was that you
> wanted a thread to run in the background while the rest served your site,
> but now you have a bunch of other ZEO clients to do the site serving for
> you.

Right.
 
> > I read that you can control product initialization to some degree thru the
> > existence of the environment variable ZEO_CLIENT. But I can't think how to
> > control initialization of specific products.
> 
> You're product would have to opt-out based on the existence of ZEO_CLIENT.
> You can do this in your product's __init__ module.  Just test for
> ZEO_CLIENT and return without calling any of your init code.

I wouldn't go there are all. As you suggested, you just need
a dedicated process that's a ZEO client.
 
> > Aha! Maybe the CS configuration shouldn't be identical. Maybe only one
> > should have Xron installed, or maybe only one should have Xron installed in
> > such a way that it is loaded at initialization time.
> 
> The latter, probably.

Nah, you don't want a regular Zope process at all. You want the
scheduler to run in a dedicated process that doesn't deal with
web requests.

Jim

--
Jim Fulton           mailto:jim@digicool.com   Python Powered!        
Technical Director   (888) 344-4332            http://www.python.org  
Digital Creations    http://www.digicool.com   http://www.zope.org