当前位置: 首页 > 服务器 > 代理服务器 > 正文

使用Nginx反向代理实现简单的负载均衡

时间:2015-02-10

Nginx反向代理的原理优点:

反向代理可以简单的理解为:代理服务器来接收internet上的服务器请求,然后将请求转发给内部的服务器上,然后将结果返回给internet上请求的客户端,所以代理服务器对外表现出来的只是一台服务器。反向代理服务器也称为Web服务器加速,针对web服务器提供加速功能。他作为代理服务器,并不针对浏览器用户,而是针对一台或者多台特定的web服务器。可以缓存web的页面,降低web服务器的访问量,从而来降低web服务器的负载,实施反向代理,只要将反向代理设备放置在一台或多台Web服务器前端即可。当互联网用户访问某个WEB服务器时,通过DNS服务器解析后的IP地址是代理服务器的IP地址,而非原始Web服务器的IP地址,这时代理服务器设备充当Web服务器,浏览器可以与它连接,无需再直接与Web服务器相连。因此,大量Web服务工作量被转载到反向代理服务上。不但能够很大程度上减轻web服务器的负担,提高访问速度,而且能够防止外部网主机直接和web服务器直接通信带来的安全隐患。

Nginx proxy是Nginx的王牌功能,利用proxy基本可以实现一个完整的7层负载均衡,它有这 些特色:

1. 功能强大,性能卓越,运行稳定。

2. 配置简单灵活。

3. 能够自动剔除工作不正常的后端服务器。

4. 上传文件使用异步模式。

5. 支持多种分配策略,可以分配权重,分配方式灵活

项目拓扑:

配置环境:

三台CentOS6.2X86  1台做Nginx Proxy  2台Apache做页面测试服务器

配置步骤:

在安装之前首先解决依赖包的问题,pcre-devel openssl zlib-devel  

一、安装nginx服务器

1. 后台的web服务我们使用的是Apache服务,关于Apache的安装部署我们在这里就不做详细说明了,我们的重点在nginx方向代理怎么配置。

2. 安装Nginx服务

yum -y install make 
     
   yum -y install pcre pcre-devel openssl-devel zlib-devel gcc gcc-c++ 
     
   mkdir /usr/local/site/nginx -p 
     
   useradd -s /sbin/nologin www 
     
   rpm -qa | grep httpd 
     
   ./configure --prefix=/usr/local/site/nginx/ --user=www --group=www  \ 指定Nginx用户组 
     
--with-http_stub_status_module  \  非核心模块,获取从上次开启之后Nginx的状态 
     
--with-http_ssl_module    开启SSL模块 
     
  make && make install