Does Nginx have separate queuing mechanism for requests?

Maxim Dounin mdounin at
Wed Oct 2 15:41:17 UTC 2013


On Wed, Oct 02, 2013 at 10:04:23AM -0400, amehzenin wrote:

> Hello.
> Consider the following situation: you are deploying application that can
> serve 1 req./sec. What would happen if I send 10 request in 1 second? I
> wrote simple app to test that:
> . 
> This test shows that your requests will be served  _in_exact_same_order_
> they were sent.
> For now, this looks like Nginx have some kind of queue for requests, but my
> colleague(administrator) sayd that there is no any queues in Nginx. So I
> wrote another question about epoll here:
> . From that discussion I figured that epoll does preserves the order of
> requests.
> I have two questions:
> 1) Is there any mistakes in reasoning/code above?
> 2) Does Nginx have some sort of queue for requests on top of epoll? Or Nginx
> uses pure epoll functionality?

There is no queue in nginx, but there is queue in a listen socket 
of your backend app.  It's called "listen queue" or "backlog" and 
likely it's what preserves a request order for you.

Maxim Dounin

More information about the nginx mailing list