On 07/24/2017 01:03 PM, Yann Ylavic wrote:
What if the fpm queue in ap_proxy_connect_backend or at POLLOUT time? If both cases I think the socket is not reused by mod_proxy_fcgi for the next request, so I don't see how it's a enablereuse issue...
I'm not sure I understand your question, but I think I've described the problem incompletely. Let me give it another try: Let's say FPM has been configured to handle 5 concurrent connections, and httpd has been configured to use up to 10. With connection reuse disabled, if we hit the server with ten requests to FPM, five connections will be served immediately, and FPM will queue up the next five. As requests finish, httpd closes each connection, and FPM grabs the next connection to service. Everything works. With connection reuse enabled, FPM still queues the last five connections. But because httpd never releases the first five, and new incoming requests continue to use them, those queued connections never get serviced. That's not FPM's fault; it advertises how many concurrent connections it can handle via the FCGI protocol, and if it refused those queued connections by default, our first use case (which works fine) would crash and burn. --Jacob