Nginx won't send FIN ACK to PHP-FPM
mdounin at mdounin.ru
Sat Sep 1 10:26:32 UTC 2012
On Mon, Aug 27, 2012 at 08:46:43AM -0400, dantes wrote:
> I have Rest API server powered by Nginx and PHP-FPM. Each API call produces
> several CURL requests.
> The script that executes the API calls, also utilizes CURL. I use curl multi
> exec, with 1,000 threads. All the setup creates a little bit less than 10K
> Anyway, here is the problem...
> The script that executes the API calls, let's say 3,000 on 1K threads. It
> takes around 170 secs to finish processing all those API calls. However,
> when the main script tries to return a response to the browser and initiate
> a FIN_WAIT it takes 8 minutes until everything is returned to the browser.
> Here is how it looks:
> My theory is that it happens because Nginx puts the worker somehow on hold
> or something like that. This was the first worker in the chain of workers.
> There is no data being transferred since the worker initiated the request to
> Any ideas what should I do?
I would recommend to obtain debug log and show us nginx -V, full
config and debug log, much like http://wiki.nginx.org/Debugging
More information about the nginx