Nginx v Apache用于高流量站点

时间:2012-06-23 18:35:21

标签: apache nginx

nginx是否适合作为高流量网站的网络服务器?

我们将建立的网站是一个电子商务网站,如果这有所作为。

从技术角度来看,我对实际的'为什么'非常感兴趣。即,从技术的角度来看,nginx为什么会成为这类网站的更好选择,或者相反,为什么它不会?

1 个答案:

答案 0 :(得分:13)

马丁,

一般而言,由于其事件驱动架构,Nginx更适合高流量站点。它不是在不同的线程中处理每个请求,而是使用非阻塞I / O来为每个线程中的许多请求提供服务。

此体系结构的重要方面是减少进程或线程的使用。一个线程可以消耗2MB到64MB以上的RAM。因此,当Apache提供10KB JPEG时,它实际上可能正在使用大量的RAM。如果您有慢速客户端(例如智能手机),请求可能会使线程忙碌数秒钟,则会变得更糟。

许多人发现在Apache面前运行Nginx作为代理是理想的中间立场。 Nginx与慢客户端进行通信,并且可以使用非常少量的RAM进行访问。将请求转发到Apache时,请求速度受本地连接的限制,而不是远程用户的连接。这意味着网络瓶颈不会使请求(以及内存占用线程)保持活动状态超过必要时间。

简而言之,您可以获得Nginx的低资源优势以及Apache的广泛功能集。