I was wondering if anyone had suggestions / recommendations for a run-time application configuration mechanism for mod-perl apps. What I am thinking of is simply a way to communicate new application settings to all of the mod-perl children.
The only solution I can think of is to have all of the mod-perl child processes periodically check a file to see if it has changed, and if so have the child process reload their application configuration. By "application configuration" I mean configuration data at the application level and above - not necessarily httpd-level configuration data (i.e. such as found in httpd.conf.) Typical application configuration data includes database credentials, flags to enable/disable parts of the application, urls for web services used by the application, etc. The idea is to have a capability something like Facebook's Gatekeeper as described in one of their tech talks ( http://techcrunch.com/2011/05/30/facebook-source-code/ ) To reduce the impact this checking would have on serving requests I was thinking of checking only every N requests (i.e. N = 10) and/or performing the check as part of the cleanup handler. Any suggestions / recommendations or alternatives for a mod-perl environment?