Bekijk Volledige Versie : Apache reload.
E. Baptist
04/05/07, 14:05
Hoihoi,
Ik heb een vraagje,
Ik wil graag vohosts automatisch laten inladen, elke 10 minuten. Natuurlijk kan dat via apache-reload. Maar het probleem is, dat wanneer ik dat laat doen, elke 10 minuten de server down is voor enkele seconden, wat weer iks waard is.
Heeft iemand hier een andere oplossing voor? Ik begin me er nu namelijk een beetje aan te ergeren. Zelf heb ik al na een oplossing proberen te zoeken, maar dus niks gevonden.
Mvg,
Kun je niet eerst kijken of er iets gewijzigd is en als dat zo is dan pas reloaden. De kans is namelijk redelijk groot dat het slechts beperkt voor komt dat er nieuwe vhosts zijn aangemaakt. Zo doen wij het met het control panel. Eens per minuut wordt er via cron gekeken of er nog een wijziging is aangebracht (indicatiefile aanwezig ja of nee) en als dat zo is, dan wordt de boel opnieuw ingeladen en anders niet.
E. Baptist
04/05/07, 15:12
Kun je niet eerst kijken of er iets gewijzigd is en als dat zo is dan pas reloaden. De kans is namelijk redelijk groot dat het slechts beperkt voor komt dat er nieuwe vhosts zijn aangemaakt. Zo doen wij het met het control panel. Eens per minuut wordt er via cron gekeken of er nog een wijziging is aangebracht (indicatiefile aanwezig ja of nee) en als dat zo is, dan wordt de boel opnieuw ingeladen en anders niet.
Het probleem is, 4 van de 5 keer is de vhost wel aangepast...
bedoel je dat elke tien minuten er vier van de vijf keer een vhost op de server is aangepast? zo vaak?
Worden er dan volledig nieuwe vhosts aangemaakt/ komen te vervallen of zijn er onderdelen van aangepast binnen de vhost container?
Zijn het volledige vhosts of zou het bijvoorbeeld ook via een mod_rewrite mogen?
al eens gedacht aan een gracefull?
Die houd de lopende sessies actief, en zodra ze overlijden (timeout) zal het nieuw proces ook de nieuwe config laden.
Tenminste als ik mij niet vergis is dat zo.
Dit houd in dat mensen die een 300MB download doen van je server, gewoon kunnen blijven downloaden zonder dat hun download wordt onderbroken.
Zie ook http://httpd.apache.org/docs/2.2/stopping.html#graceful
lijkt me toch zeer vreemd als je iedere 10minuten een vhost hebt die aangepast wordt, niet :/
wat voor rare constructie zit daar achter, die dat nodig maakt :/
E. Baptist
04/05/07, 17:34
Waarom zovaak?
Subdomeinen die aangemaakt moeten worden, doordat men ze registreerd.
Maar alleen wanneer er men aan het downloaden is, is niet genoeg. Het komt ook vaak genoeg voor, dat wanneer men gewoon een html pagina wil opvragen, dat apache net aan het herstarten is, en daarom je dus heel lang zit met: pagina word geopend, en naar 5 / 10 seconden pas de pagina ziet. En nee, dit ligt niet aan de verbinding, want het is steeds precies wanneer de cron apache restart :P
dat kan je toch ook met een http_rewrite afvangen?
WebXtrA-RĂ¡mon
04/05/07, 21:57
met een reload van de configuratie zou apache niet down moeten gaan.
Hoe reload je de config?
/etc/init.d/httpd reload of /etc/init.d/apache2 reload?
of doe je /etc/init.d/httpd restart of /etc/init.d/apache2 restart
systemdeveloper
04/05/07, 23:13
gewoon de graceful gebruiken -> bestaande verbindingen blijven behouden en nieuwe httpdchilds hebben gewoon de nieuwe config.
E. Baptist
05/05/07, 13:36
bedankt voor de hulp, ik ga het eens proberen :)
Bij mij staat er in cron een check om de 10 minuten ingeplanned om te kijken of er een service herstart moet worden.
Gebruik gewoon de graceful reload, zodat idd de lopende processen afgewerkt worden op de oude config, en de nieuwe childs de nieuwe config inladen... Werkt als een zonnetje...
Verder ben ik ook nieuwsgierig naar de reden waarom je elke 10 min een andere vhost config hebt...
E. Baptist
06/05/07, 11:10
Gebruik gewoon de graceful reload, zodat idd de lopende processen afgewerkt worden op de oude config, en de nieuwe childs de nieuwe config inladen... Werkt als een zonnetje...
Verder ben ik ook nieuwsgierig naar de reden waarom je elke 10 min een andere vhost config hebt...
Mensen kunnen zich gratis aanmelden, en krijgen daarbij ook een subdomeinnaam, die dus in de apache config geschreven moet worden.
Maar zo te zien is het wat anders, op mijn andere fedora server werkt het als een zonnetje, maar mijn debian levert problemen op. :mad:
Iig, bedankt voor jullie hulp!