nginx 的说明和安装

上一篇 / 下一篇  2012-05-29 14:39:33 / 个人分类:性能测试相关

    昨天接触到了nginx,挺好奇的,今天有时间就查了查资料。现总结如下:
    Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。 
  Nginx 是一个很牛的高性能Web和反向服务器服务器,它具有很多非常优越的特性:
  在高连接并发的情况下,Nginx是Apache服务器不错的替代品:Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一。能够支持高达 50,000 个并发连接数的响应,感谢Nginx为我们选择了 epoll and kqueue作为开发模型。
  Nginx作为负载均衡服务器:Nginx 既可以在内部直接支持 Rails 和 PHP 程序对外进行服务,也可以支持作为 HTTP代理服务器对外进行服务。Nginx采用C进行编写,不论是系统资源开销还是CPU使用效率都比 Perlbal 要好很多。
  作为邮件代理服务器:Nginx 同时也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器),Last. fm 描述了成功并且美妙的使用经验。
  Nginx 是一个安装非常的简单,配置文件非常简洁(还能够支持perl语法),Bugs非常少的服务器:Nginx 启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够不间断服务的情况下进行软件版本的升级。
   在高并发连接的情况下,Nginx是Apache服务器不错的替代品。Nginx同时也可以作为7层负载均衡服务器来使用。根据我的测试结果,Nginx 0.8.46 + PHP 5.2.14 (FastCGI) 可以承受3万以上的并发连接数,相当于同等环境下Apache的10倍

  根据经验,4GB内存的服务器+Apache(prefork模式)一般只能处理3000个并发连接,因为它们将占用3GB以上的内存,还得为系统预留1GB的内存。我曾经就有两台Apache服务器,因为在配置文件中设置的MaxClients为4000,当Apache并发连接数达到3800时,导致服务器内存和Swap空间用满而崩溃。

  而这台 Nginx 0.8.46 + PHP 5.2.14 (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.8.46 + PHP 5.2.14 (FastCGI) 服务器的PHP程序,仍然速度飞快。
  Nginx的安装与启动
简单介绍如何在 CentOS 下安装 Nginx
工具/原料
如果系统没安装 GCC 开发工具得先安装,可以用下面的命令
yum -y groupinstall "Development Tools"
步骤/方法
下载最新版本Nginx 网址http://nginx.org/en/download.html
wgethttp://nginx.org/download/nginx-0.8.53.tar.gz
解压下载下好的源码包
tar zxvf nginx-0.8.53.tar.gz
进入解压出的源码文件夹
cd nginx-0.8.53
配置nginx
./configure --prefix=/opt/nginx --with-http_stub_status_module
解释: --prefix 为安装路径,--with-为需要安装的模块,具体可以运行 ./configure --help 查看有效模块
编译并安装 nginx
make && make install
启动 nginx
/opt/nginx/sbin/nginx
停止 nginx
/opt/nginx/sbin/nginx -s stop
重载 nginx
/opt/nginx/sbin/nginx -s reload

TAG:

 

评分:0

我来说两句

Open Toolbar