response times and network io

Igor Sysoev is at rambler-co.ru
Sat Mar 1 00:23:42 MSK 2008


On Fri, Feb 29, 2008 at 11:05:37AM -0600, Joe Williams wrote:

> I used httperf to give me the network I/O (KB/s) and response times. I 
> could probably produce the sar data from each if you would like it. I 
> assume the response times are due to Nginx not needing to take time to 
> start up another process/thread?

So nginx's network I/O is for example, 20M/s, while Apache's - 100M/s ?

In this case network I/O and response times are the same things.
The lesser response times, the more you can get for the same time.

Apache usually does not start new processes, it has some number of
already preforked processes ready to handle requests.

> Igor Sysoev wrote:
> >On Thu, Feb 28, 2008 at 08:24:24PM -0600, Joe Williams wrote:
> >
> >  
> >>please excuse my typo. regarding network I/O nginx uses consistently 
> >>lower I/O than apache.
> >>
> >>regardless i am curious about how it processes requests differently to 
> >>obtain lower response times and network I/O.
> >>    
> >
> >How do you measure network I/O ?
> >
> >In short, Apache and nginx use different model for processing requests.
> >Apache processes connection in one process or thread while nginx processes
> >thousand connections in one process/thread using scaleable methods such
> >as kqueue/epoll/etc.
> >
> >  
> >>thanks for any help you can provide.
> >>
> >>-Joe
> >>
> >>
> >>Joe Williams wrote:
> >>    
> >>>i am performing some httperf tests against apache and nginx. something 
> >>>i noticed that piqued my interest were the consistency of response 
> >>>times (0.4 ms each run regardless of number of request, much lower 
> >>>than apache in all cases) and network I/O (consistently higher than 
> >>>apache regardless of number of request). it also uses less cpu than 
> >>>apache and doesn't nearly drive up the load.
> >>>
> >>>are these normal results? is there a mechanism in nginx that keeps the 
> >>>response times low and consistent? also, is it normal that it uses 
> >>>more network I/O? if so, what is the cause? to me it would seem like 
> >>>that it uses more bandwidth to respond to the same number of requests 
> >>>which seems inefficient.
> >>>
> >>>please correct me if i am wrong. i am just trying to understand the 
> >>>core differences in how nginx works in comparison to apache and why i 
> >>>would see these performance differences.
> >>>
> >>>thanks for the help.
> >>>
> >>>-joe
> >>>
> >>>      
> >>-- 
> >>Name: Joseph A. Williams
> >>Email: joe at joetify.com
> >>
> >>
> >>    
> >
> >  
> 
> -- 
> Name: Joseph A. Williams
> Email: joe at joetify.com
> 
> 

-- 
Igor Sysoev
http://sysoev.ru/en/





More information about the nginx mailing list