28 messages in ru.sysoev.nginxRe: 1000 requests per second?
FromSent OnAttachments
Chris Gers32Oct 30, 2008 4:44 am 
Anoop AliasOct 30, 2008 4:58 am 
Chris Gers32Oct 30, 2008 6:59 am 
Cherife LiOct 30, 2008 7:17 am 
gl...@lumanau.web.idOct 30, 2008 7:21 am 
Eugene JanusovOct 30, 2008 7:28 am 
Jim OhlsteinOct 30, 2008 7:32 am 
Nick PearsonOct 30, 2008 7:34 am 
gl...@lumanau.web.idOct 30, 2008 7:39 am 
Eugene JanusovOct 30, 2008 7:49 am 
Chris Gers32Oct 30, 2008 8:23 am 
Eugene JanusovOct 30, 2008 8:59 am 
Robert GabrielOct 30, 2008 1:23 pm 
Chris Gers32Oct 31, 2008 3:42 am 
Robert GabrielOct 31, 2008 4:22 am 
Jim OhlsteinOct 31, 2008 5:38 am 
Chris Gers32Nov 17, 2008 6:15 am 
gl...@lumanau.web.idNov 17, 2008 6:23 am 
Chris Gers32Nov 17, 2008 7:13 am 
Jeremy HinegardnerNov 17, 2008 9:32 am 
Jim OhlsteinNov 17, 2008 10:04 am 
owkayeNov 18, 2008 12:36 am 
luben karavelovNov 18, 2008 1:31 am 
Chris Gers32Nov 21, 2008 1:47 am 
John MooreNov 21, 2008 3:03 am 
owkayeNov 21, 2008 4:03 am 
John MooreNov 21, 2008 4:39 am 
ThomasNov 21, 2008 6:29 am 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: 1000 requests per second?Actions...
From:luben karavelov (lub@unixsol.org)
Date:Nov 18, 2008 1:31:25 am
List:ru.sysoev.nginx

owkaye wrote:

Greetings,

Can nginx -- running on one server -- deliver 1000 requests per second without "bogging down" and pushing more and more requests into a queue?

Here's my reason for asking:

I'm designing a live auction website that needs to respond to 500-1000 requests per second for about an hour. Each request will post only 20 bytes of data so the volume being posted is low. Nevertheless the HTTP headers still need to be parsed and they will have far more volume than the actual post data -- so it seems I should do everything I can to reduce the HTTP header overhead. This will substantially reduce the load and speed up nginx's response times, correct?

I'm wondering if nginx has the ability to use "Web Sockets" technology to eliminate all but the first HTTP header, and maintain a connection with the browser so data can be passed back and forth faster?

http://www.w3.org/html/wg/html5/#network

If this is not possible, can you tell me the best way to reduce the HTTP header overhead so I can make sure that each of those 1000 requests per second are responded to as fast as they come in? Or am I concerned about something that's a non-issue, perhaps because nginx is so blazing fast that it can handle this kind of load without breaking a sweat?

The worst problem I can imagine is that during one of these live auctions the server will begin to respond slowly and push requests into a queue. If this happens, bidders will not receive timely updates from the server and then the whole service loses credibility.

If Web Sockets is not an option, perhaps using Javascript in the visitor's browsers to send requests via XMLHttpRequest is the next-best option for reducing overhead?

http://axod.blogspot.com/

Thanks for any insights you can provide to help me decide whether or not nginx might be appropriate for my needs.

My experience is that nginx will not pose limit in this case. On my desktop (Pentium 4) nginx serves 3000-5000 req/s with static content (10K). What might pose limits is your application code and database utilization pattern.

luben