终于又下定决心开始写博客了,每天一点点还是要坚持下去,质变必须是长时间的量变才会发生。就这样吧,今天开始,结束了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的综合对比
<a href="http://s3.51cto.com/wyfs02/M00/4C/57/wKioL1Q7pc-hKcs4AAHDR7Th2V4776.jpg" target="_blank"></a>
本文转自shayang8851CTO博客,原文链接:http://blog.51cto.com/janephp/1563431,如需转载请自行联系原作者