Incidentally Perrin - how do you come up with the list of vendor (i.e.
not your project's) modules to load in the parent? Do you just load a
page, look at %INC, and then subtract out your personal modules? Do
you have to do this every so often to catch new vendor modules that
have snuck in as dependencies?
On Sep 11, 2009, at 2:52 PM, Perrin Harkins wrote:
On Fri, Sep 11, 2009 at 5:26 PM, Jonathan Swartz <swa...@pobox.com>
wrote:
This is the nicest solution I've seen so far. The only problem I
can see is
its performance - each potentially-changing module has to be loaded
on each
request. **
How long does it take for you? I've run a lot of large mod_perl apps
this way and never seen it take more than 3 seconds to compile and
generate a page. Maybe this is only an issue with Moose? Or maybe
there's some expensive initialization that could be skipped in
development?
Anyway, another approach would be to set MaxClients to 1 and install
cleanup handler that kills the current process if it sees that any of
the watched modules have been changed. Then you don't need a separate
process.
- Perrin