Thursday 18 June 2015

Nginx VS Apache

Nginx - pronounced as "engine x" is a powerful webserver with features like concurrency, performance and low memory usage. It can also act as reverse proxy server for HTTP, HTTPS, SMTP protocols as well as load balancer.
It uses asynchronous even-driven approach for handling request unlike apache that uses threaded or process-oriented approach. Nginx is faster than apache because it doesn't need to spawn new processes or threads for each request like apache.

The traditional thread based model spawn a process/thread for serving each request which is completely separate and is dedicated. This may cause I/O blocking problems when process is waiting to get completed to release the resources(memor/CPU) in hold.
Nginx was developed as a result of C10K problem i.e 10,000 concurrent clients. It was written in C and provide features to solve the above problems caused by thread based model.

  • apache supports wider range of operating system as compare to Nginx.
  • Nginx doesn't create a new process for a new request but apache does.
  • Nginx is much faster than apache serving static pages
  • Apache can be configured more easily as compared to Nginx as it comes with lots of configuration feature.
  • Nginx is lightweight as compare to Apache
<<Reverse proxy and load balancing

0 comments:

Post a Comment

 

Copyright @ 2013 Appychip.

Designed by Appychip & YouTube Channel