Re: Apache prefork overload caused by Googlebot crawling many host-routed sites

Frank Gingras <[email protected]> Thu, 26 Feb 2026 20:01:33 -0500
Newsgroups gmane.comp.apache.user
Message-ID <CAOY50mv2Pn6AwqYZt0WFikLdyxPnnGwBhKvFNfggFxM0Y5-Zdg@mail.gmail.com>
--000000000000d9c7d2064bc3c7f0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Feb 26, 2026 at 7:02=E2=80=AFPM Tatsuki Makino <tatsuki_makino@hotm=
ail.com>
wrote:

> Hello.
> Sorry for cutting in from the side.
>
> On 2026/02/25 23:48, Frank Gingras wrote:
> > The solution is really to use the event mpm here - why are you bound to
> use
> > the prefork approach?
> When combined with PHP and the like, it sometimes causes unexpected
> terminations, doesn't it?
> It still seems to be unresolved, and the cause is unknown.
> It seems wise to set it to voluntarily shut down and restart after
> handling a certain number of requests.
> Prefork is what performs that for each request individually :)
>
> Regards.
>
>
Mixing httpd with the mod_php DSO is really not the best way to deploy a
server.  What you want instead is to use a threaded mpm like event, and
proxy to pools of php-fpm processes using proxy_fcgi.

This allows for a very large number of httpd workers, and a relatively
limited number of fpm processes.  Then, you can apply caching as needed to
prevent requests from tying up fpm workers for too long, and over-spawning
heavy processes.

Back then when using prefork and mod_php, memory leaks did indeed occur
over time, so restarting the workers was needed.  This is really no longer
a major concern.

--000000000000d9c7d2064bc3c7f0
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><br></div><br><div class=3D"gmail_quote g=
mail_quote_container"><div dir=3D"ltr" class=3D"gmail_attr">On Thu, Feb 26,=
 2026 at 7:02=E2=80=AFPM Tatsuki Makino &lt;<a href=3D"mailto:tatsuki_makin=
[email protected]">[email protected]</a>&gt; wrote:<br></div><blockquo=
te class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px =
solid rgb(204,204,204);padding-left:1ex">Hello.<br>
Sorry for cutting in from the side.<br>
<br>
On 2026/02/25 23:48, Frank Gingras wrote:<br>
&gt; The solution is really to use the event mpm here - why are you bound t=
o use<br>
&gt; the prefork approach?<br>
When combined with PHP and the like, it sometimes causes unexpected termina=
tions, doesn&#39;t it?<br>
It still seems to be unresolved, and the cause is unknown.<br>
It seems wise to set it to voluntarily shut down and restart after handling=
 a certain number of requests.<br>
Prefork is what performs that for each request individually :)<br>
<br>
Regards.<br>
<br></blockquote><div><br></div><div>Mixing httpd with the mod_php DSO is r=
eally not the best way to deploy a server.=C2=A0 What you want instead is t=
o use a threaded mpm like event, and proxy to pools of php-fpm processes us=
ing proxy_fcgi.</div><div><br></div><div>This allows for a very large numbe=
r of httpd workers, and a relatively limited number of fpm processes.=C2=A0=
 Then, you can apply caching as needed to prevent requests from tying up fp=
m workers for too long, and over-spawning heavy processes.</div><div><br></=
div><div>Back then when using prefork and mod_php, memory leaks did indeed =
occur over time, so restarting the workers was needed.=C2=A0 This is really=
 no longer a major concern.=C2=A0</div></div></div>

--000000000000d9c7d2064bc3c7f0--