Reputation: 1800
I know Nginx could buffer response from upstream server.
My question is, does Nginx also buffer http request from client? I mean, if Nginx get a http request from client, does it create connection with upstream server immediatly? Or it will create connection after it get a whole http request?
Many frameworks of application server use worker-thread-pool model. If the client machine is slow or far from Nginx and upstream server , without buffering http request in Nginx side, upstream server will waste pretty much CPU resource on waiting for completing a http request.
Thanks
Upvotes: 3
Views: 3050
Reputation: 25293
Here's the quote from the proxy module wiki page:
Note that when using the HTTP Proxy Module (or even when using FastCGI), the entire client request will be buffered in nginx before being passed on to the backend proxied servers.
Moreover before nginx 1.7 it wasn't possible to disable request buffering (see #251).
Upvotes: 4