[ZODB-Dev] mkzeoinst.py without ZOPE

Jeremy Hylton jeremy at zope.com
Wed Jan 7 22:22:43 EST 2004


On Wed, 2004-01-07 at 19:20, John Belmonte wrote:
> Jeremy Hylton wrote:
> > Actually, daemon mode is a bit different.  Running runzeo.py will run a
> > ZEO server.  Running it under the control of zdaemon will run it as a
> > daemon program.
> 
> I see.  The zdaemon system seems a little overkill to me, or I should 
> say that the idea of needing to babysit a server to restart in case of a 
> crash doesn't give me much confidence in ZEO.  I attempted to use 
> Debian's start-stop-daemon instead, but for some reason I can't connect 
> to the ZEO server when I use the background option.

zdaemon provides a separation of concerns.  The old ZEO/start.py script
had the same basic functionality, but the integration of zdaemon in the
same process was messy.  I believe the daemontools package takes a
similar approach.

I don't think you should see the use of zdaemon as a reflection on ZEO
reliability.  There are plenty of reasons you might want to restart a
daemon process or you might want to send it a signal when you rotate log
files.

> I wish zdaemon supported a pid file, which is a standard thing for 
> daemon programs.  In my case I have a cron job that does some 
> maintenance on my database, and I was using the ZEO server pid file to 
> let the job know that it's safe to run.  Now I guess I'll have to run 
> "zdctl status" and parse the output, which seems a bit fragile.

I think that's the best strategy.  I'll note that the old start.py had
bugs that left stale PID files around, so that approach was somewhat
fragile, too.

Jeremy





More information about the ZODB-Dev mailing list