玩玩负载均衡---在window与linux下配置nginx

利用Nginx做负载均衡

这是80端口被占用的缘故,修改下端口即可。

文件conf/nginx.conf

    server {
        listen       8888;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm;
        }

 

在浏览器中输入127.0.0.1:8888看到下面页面即说明成功。

Welcome to nginx!

If you see this page, the nginx web server is successfully installed and working. Further configuration is required.

For online documentation and support please refer tonginx.org.
Commercial support is available atnginx.com.

Thank you for using nginx.

   

  最近正在研究Nginx,Nginx作为反向代理服务器,可以对Web服务器提供加速,并且具有负载均衡的功能。

     首先我要在官网下载Nginx(http://nginx.org/en/download.html),目前最新稳定的版本为1.0版本,Linux和Windows版本我都下下来了,在两台服务器上做网站负载均衡。

在Windows版本中,将压缩包进行解压,执行命令:

1
start nginx

这样就可以启动nginx服务了。而执行命令:

1
nginx -s stop

可以停止服务。

 

这是我在192.168.3.82的IIS服务器上,添加两个站点:

image

这两个站点分别添加两个文件index.html,两个文件内容分别显示:“这是站点1”,“这是站点2”。


nginx 的 upstream默认是以轮询的方式实现负载均衡,这种方式中,每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。

另外一种方式是ip_hash:每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。 

 

负载均衡配置示例:

upstream backend {

             #ip_hash;

 

             server 192.168.1.251;

             server 192.168.1.252;

             server 192.168.1.247;

         }


在nginx.conf的配置文件调整相关配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
upstream site {
server 192.168.3.82:8040;
server 192.168.3.82:8041;
}
 
server {
listen 8080;
server_name 192.168.3.82;
 
#charset koi8-r;
 
#access_log logs/host.access.log main;
 
location / {
root html;
index index.html index.htm;
proxy_pass http: //site ;
 
}
1
  
然后保存文件即可。

接着在运行一次start nginx,当你不断刷新页面的时候,浏览器上就会来回切换这两个站点。

image

image

可以发现这里切换是按照1:1的方式来回切换,通过配置文件你可以站点的权重:

1
2
3
4
upstream  site { 
      server   192.168.3.82:8040 weight=2;
      server   192.168.3.82:8041 weight=1;
}
weight即为对应网站的权重。 

 

在Linux中,安装Nginx比较麻烦一些,因为需附加安装一些包,如gzip,pcre等等。具体可以查看:http://www.cnblogs.com/yuanermen/archive/2011/03/31/2000993.html

 

可以在Linux上部署你的站点,比如站点3,如果你要把Windows服务器作为反向代理服务器,那么在upstream site添加一个新的站点:

1
2
3
4
5
upstream  site { 
      server   192.168.3.82:8040 weight=2;
      server   192.168.3.82:8041 weight=1;
      server   192.168.3.90:8080;
}

你还可以利用Nginx对反向代理服务器上对静态文件(如JPG,GIF,CSS,JS等等)进行缓存,这样当你需要从Web服务器去请求静态资源的时候,可以直接从反向代理服务器上取得本地的一个资源,这样减少了对Web服务器的压力。具体可以查看: http://www.cnblogs.com/daizhj/archive/2009/11/03/1595292.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值