On Aug 28, 2006, at 9:24 PM, Mike Orr wrote: > But my path configuration is in Python modules, so then I tried > writing a program that called durus.run_durus.start_durus . But I'd > still have to have start-stop-daemon manage three PID files. > > Now I'm trying to do it all in my top-level Python program, doing my > own fork()'s for the Durus servers. It seems like this would be a > common task, especially at the MEMS Exchange which has lots of Quixote > programs with Durus databases. So I'm wondering if there's any > existing code for this. Yes there is. It is called "qp" -- the site manegement utility that comes with QP, the framework. > Also, how do you manage logfiles? I'd like > to get Quixote and the two Durus servers writing to the same logfile > if possible. What about signals? Should I just override SIGTERM to > stop the Durus servers on exiting? Or do I have to override the dozen > other signals like SIGPIPE that might be raised? Also, stop_durus > just sends a "Q" to the server and hopes it quits, rather than killing > it. Has this been reliable in practice? QP, out of the box assumes a single durus db, and the start/stop/restart functions target the one scgi process (and the multiple web process children) and the one durus server process. All this is specified in a Publisher's configuration, and any combo goes.. i.e. if you want no scgi, or no durus server, etc. If you want a connection to a second durus db, then you have to manage it yourself. I actually have a site that seems to have an identical setup as yours... namely a data-readonly db, and another for users, sessions, etc. All I do to handle this situation is to *not* run a server for the readonly db... as you probably know you can open multiple direct (FileStorage) readonly connections to a durus db. Therefore the problem comes down to just specifying the connections details to the Publisher's configuration. Start/stopping the web process will startt/stop the file connection per publisher process. This also leave me the option to open a write connection from any 3rd party process whenever I need to do any modifications to the data. This is for QP, though, that is not quite the same as Quixote. But, the differences are really not big... incidentally, the same app i mention here used to be a quixote app, and for which i had also wrote my own site management code. I am quite happy to have left that code behind. mario