Nginx ("engine x") 是一个高性能的
HTTP
和
反向代理
服务器,也是一个 IMAP/POP3/SMTP 服务器
。
Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将 源代码 以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。
Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将 源代码 以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。
2011年6月1日,nginx 1.0.4发布。
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用。
其特点是
占有内存少
,
并发能力强
,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、新浪、网易
、腾讯等。
nginx优点:
低资源:占用系统资源少,
在一般的情况下,10000个非活跃的HTTP Keep-Alive 连接在Nginx中仅消耗2.5M的 内存,这也是Nginx支持高并发连接的基础。
nginx官方表示保持10,000个没有活动的连接, 它只占2.5M内存。
高并发:可抗高并发,Nginx支持的并发连接上限取决于你的内存
配置简单:
热部署:
master管理进程与worker工作进程的分离设计,使的Nginx具有热部署的功能,那么在7×24小时不间断服 务的前提下,升级Nginx的可执行文件。也可以在不停止服务的情况下修改配置文件,更换日志文件等功能
apache优点:
稳定、bug少
rewrite ,比nginx 的rewrite 强大
rewrite ,比nginx 的rewrite 强大
动态页面
模块很多,基本想到的都可以找到
模块很多,基本想到的都可以找到
Nginx 静态处理性能比 Apache 高 3倍以上
Apache 对 PHP 支持比较简单,Nginx 需要配合其他后端用
Apache 的组件比 Nginx 多
Apache 对 PHP 支持比较简单,Nginx 需要配合其他后端用
Apache 的组件比 Nginx 多
nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的
apache是同步多进程模型,一个连接对应一个进程;nginx是异步的,多个连接(万级别)可以对应一个进程
apache是同步多进程模型,一个连接对应一个进程;nginx是异步的,多个连接(万级别)可以对应一个进程
nginx处理动态请求鸡肋,动态请求要apache去做nginx只适合静态和反向 。
建议使用nginx做前端,後端用apache,大型网站建议用nginx自带的集群功能。
前端nginx抗并发,后端 apache集群,配合的也不错。
前端nginx抗并发,后端 apache集群,配合的也不错。
Nginx+Apache结构,其实就是Nginx做前端,Apache做后端,充分发挥他们各自的优势之处。Nginx对于高并发性能出众,Proxy功能强效率高,占用系统资源少,而Apache在高并发时对队列的处理比FastCGI(Nginx需要通过fastcgi等方式运行php)更好,并且在处理动态php页面时,mod_php也比php-cgi更稳定更高效。
也就是说,我们的目的是,由Nginx来接收客户端的请求,如果是动态页面请求,就交给Apache处理,然后经由Nginx再返回给客户端,其余的请求,则由Nginx自己处理,然后把结果返回给客户端,。当然了,你完全可以让Nginx只做Proxy功能,所有的请求都交给Apache,Tomcat等处理。