Nginx相比Apache的优点如下:
1、最核心的区别在于apache是同步多进程模型,一个连接对应一个进程;而nginx则是异步的,多个连接可以对应一个进程。
2、作为大家常用的 Web 服务器:Nginx 使用更少的资源,可以支持更多的并发连接,体现出更高的效率,这个优点使Nginx尤其受到虚拟主机提供商的欢迎。而且在高连接并发的情况下,Nginx是Apache服务器不错的替代品,Nginx在美国是做虚拟主机生意的大佬们经常选择的软件平台之一。能够支持高达50000个并发连接数的响应, 感谢Nginx为我们选择了epoll and kqueue作为开发模型。Nginx作为负载均衡服务器既可以在内部直接支持 Rails 和 PHP 程序对外进行服务,也可以支持作为HTTP代理服务器对外进行服务。Nginx采用C进行编写, 不论是系统资源开销还是CPU使用效率都比Perlbal 要好很多。
3、Nginx 配置更加简洁, Apache则比较复杂 ,Nginx服务器启动特别容易, 并且几乎可以做到7天24小时不间断运行,即使运行好几个月也不需要重新启动。还可以不间断服务的情况下进行软件版本的升级 。Nginx静态处理性能比Apache高好几倍,Apache对PHP支持比较简单,Nginx 需要配合其他后端来使用,Apache的组件比 Nginx多。
4、nginx的最大优势是处理静态请求,cpu的内存使用率会很低,apache适合处理动态请求,所以现在一般前端用nginx作为反向代理抗住压力,apache作为后端处理动态请求。
5、更加轻量级,同样起web服务器,比apache占用更少的内存及资源抗并发,nginx处理请求是异步非阻塞的,而apache则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能高度模块化的设计,编写模块相对简单社区活跃,各种高性能模块出品迅速啊。