From 9e02c1b3aeb449c0936597699cf5db48af55f405 Mon Sep 17 00:00:00 2001 From: Luca Toscano Date: Sat, 10 Feb 2018 12:16:07 +0000 Subject: [PATCH] documentation rebuild git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1823750 13f79535-47bb-0310-9956-ffa450edef68 --- docs/manual/mod/mod_proxy_fcgi.html.en | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/docs/manual/mod/mod_proxy_fcgi.html.en b/docs/manual/mod/mod_proxy_fcgi.html.en index 8c85d19e0a..67fff53d93 100644 --- a/docs/manual/mod/mod_proxy_fcgi.html.en +++ b/docs/manual/mod/mod_proxy_fcgi.html.en @@ -92,6 +92,30 @@

Single application instance, connection reuse (2.4.11 and later)

ProxyPass "/myapp/" "fcgi://localhost:4000/" enablereuse=on
+

Enable connection reuse to a FCGI backend like PHP-FPM

+

Please keep in mind that PHP-FPM (at the time of writing, February 2018) + uses a prefork model, namely each of its worker processes can handle one + connection at the time.
+ By default mod_proxy (configured with enablereuse=on) + allows a connection pool of + ThreadsPerChild connections to the + backend for each httpd process, so the following use cases should be taken + into account:

+ +

The maximum number of PHP-FPM worker processes needs to be configured wisely, + since there is the chance that they will all end up "busy" handling idle + persistent connections, without any room for new ones to be established, + and the end user experience will be a pile of HTTP request timeouts.

+
+

The following example passes the request URI as a filesystem path for the PHP-FPM daemon to run. The request URL is implicitly added to the 2nd parameter. The hostname and port following fcgi:// are where -- 2.40.0