Nginx + PHP (FastCGI)搭建胜过Apache 10倍的W…

2009-05-13 12:06:40来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

 
[url=javascript:;]Nginx[/url]
("engine
x") 是一个高性能的 HTTP 和反向
[url=javascript:;]代理[/url]
[url=javascript:;]服务器[/url]
,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor
Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,它已经在该站点运行超过两年半了。Igor
将源代码以类BSD许可证的形式发布。
  Nginx 的中文维基:
http://wiki.codemongers.com/NginxChs
  在高并发连接的情况下,Nginx是
[url=javascript:;]Apache[/url]
服务器不错的替代品。Nginx同时也可以作为7层
[url=javascript:;]负载均衡[/url]
服务器来使用。根据我的测试结果,Nginx 0.5.33 +
[url=javascript:;]PHP[/url]
5.2.5 (FastCGI) 可以承受3万以上的并发连接数,相当于同等环境下Apache的10倍

 
 根据我的经验,4GB内存的服务器+Apache(
[url=javascript:;]prefork[/url]
模式)一般只能处理3000个并发连接,因为它们将占用3GB以上的
[url=javascript:;]内存[/url]
,还得为系统
预留1GB的内存。我曾经就有两台Apache服务器,因为在配置文件中设置的MaxClients为4000,当Apache并发连接数达到3800
时,导致服务器内存和Swap空间用满而崩溃。
  而这台 Nginx 0.5.33 + PHP 5.2.5 (FastCGI)
服务器在3万并发连接下,开启的10个Nginx进程消耗150M内存(15M*10=150M),开启的64个php-cgi进程消耗1280M内存
(20M*64=1280M),加上系统自身消耗的内存,总共消耗不到2GB内存。如果服务器内存较小,完全可以只开启25个php-cgi进程,这样
php-cgi消耗的总内存数才500M。
  在3万并发连接下,访问Nginx 0.5.33 + PHP 5.2.5
(FastCGI)
服务器的PHP程序,仍然速度飞快。下图为Nginx的状态监控页面,显示的活动连接数为28457(关于Nginx的监控页配置,会在本文接下来所给出
的Nginx配置文件中写明):

  以下为 Nginx 0.5.33 + PHP 5.2.5 (FastCGI) 服务器在3万并发连接下,开启的10个Nginx进程和64个php-cgi进程时的系统负载情况:

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:基于LVS的互联网应用

下一篇:MySQL Proxy 学习笔记