终于又下定决心开始写博客了,每天一点点还是要坚持下去,质变必须是长时间的量变才会发生。就这样吧,今天开始,结束了7个月的停滞,继续下去!!

一、Nginx的发展

Nginx是一款高性能的HTTP和反向代理服务器。Nginx能够选择高效的epoll(Linux2.6内核)、kqueue(FreeBSD)、eventport(Solaris10)作为网络I/O模型,在高连接并发的情况下,Nginx是Apache服务器不错的替代品。

1、选择Nginx的理由

    1)高并发连接

    Nginx能支撑数万级的并发连接,这得益于Nginx使用了最新的epoll(Linux2.6内核)和kqueue(freebsd)网络I/O模型,而Apache使用的则是传统的select模型,其比较稳定的Prefork模式为多进程模式,需要经常派生子进程,所消耗的CPU等服务器资源要比Nginx高的多。

    2)内存消耗少

    Nginx+PHP(FastCGI)服务器在3万并发连接下,开启的10个Nginx进程消耗150MB内存,开启的64个php-cgi进程消耗1280MB内存,加上系统自身消耗的内存,总共消耗不到2GB的内存。如果服务器的内存较小,完全可以只开启25个php-cgi进程,这样消耗的内存会更少。同等硬件环境下,Nginx的处理能力相当于Apache的5-10倍。

    3)成本低廉

    Nginx为开源软件,采用的是2-clause BSD-like协议,可以免费使用,并且可用于商业用途。

    4)其他理由

    配置文件非常简单,即使非专业系统管理员也能看懂。

    支持Rewrite重写规则,能够根据域名,URL的不同,将HTTP请求分到不同的后端服务器群组。

    内置的健康检查功能,如果Nginx Proxy后端的某台Web服务器宕机了,不会影响前端访问。

    节省带宽,支持GZIP压缩,可以添加浏览器本地缓存的Header头。

    稳定性高,用于反向代理,宕机的概率微乎其微。

    支持热部署,它的启动特别容易,并且几乎可以7天*24小时不间断的运行,即使运行数个月也不需要重新启动。你还能够在不间断服务的情况下,对软件版本进行升级。


二、Nginx 与 Apache、Lighttpd的综合对比

Nginx--简介_Nginx