> On 2 Feb 2018, at 14:19, Jim Jagielski <j...@jagunet.com> wrote:
> 
> To be honest, I don't think we ever envisioned an actual environ
> where the config files change every hour and the server gracefully
> restarted... I think our working assumptions have been that actual
> config file changes are "rare", hence the number of modules that
> allow for "on-the-fly" reconfiguration which avoid the need for
> restarts.
> 
> So this is a nice "edge case"
> 

Think mass hosting of 10000+ reverse-proxy front-ends all in the same Apache 
instance, with self-service updates to configs as well as a staging 
environment.The 24-hour cycle is like this..

1am: Full stop (SIGTERM) and start of Apache with all configurations, primarily 
to permit log file rotation.

Then, on the hour, any configuration changes requested will be made live by 
auto-generation of a giant 200k+ configuration then a HUP (not a USR1) signal 
to keep the same parent, but a bunch of fresh children. As these are mostly 
reverse proxies, we generate thousands of balancer and balancermember 
directives per configuration.

In the background, once a minute, a background process is always checking for 
responses and forcibly restarting Apache (SIGTERM then SIGKILL if necessary) if 
it doesn’t respond.

Finally, bear in mind that line number changes can occur merely because a new 
virtualhost was added ahead of a given virtualhost, so some kind of tracking 
UUID for a virtualhost based on whatever non-line-number properties is probably 
useful.

- Mark


Reply via email to