Nginx——Nginx 实现负载均衡

目录

1. Nginx 负载均衡策略

1.1 轮询(默认)

1.2 weight 权重

1.3 ip_hash

1.4 least_conn 最少连接

2.  Nginx 负载均衡备份和宕机

21. 备份 backup 配置;

2.2 宕机down配置;

3. Nginx 实现负载均衡

1. Nginx 负载均衡策略

1.1 轮询(默认)

每个请求轮流分配到不同的后端服务器,如果后端服务器挂掉,则自动被剔除;

示例:

upstream www.zth.com{

         server 172.17.0.2:8080 ;

         server 172.17.0.3:9090 ;

}

1.2 weight 权重

根据 weight 权重,请求会根据权重比例分发给不同后端服务器,weight 权重越高,分配的比例越大;

示例:

upstream www.zth.com{

         server 172.17.0.2:8080 weight=5;

         server 172.17.0.3:9090 weight=10;

    }

1.3 ip_hash

ip_hash 策略是根据用户客户端的 IP 的 hash 值来分配具体服务器,这样每个访问客户端都会固定访问某一个服务器,这样可以解决 session 丢失问题,很多网站都采用这种策略来搞负载均衡,主要考虑到session问题;

示例:

 upstream www.zth.com{

         ip_hash;

         server 172.17.0.2:8080 ;

         server 172.17.0.3:9090 ;

}

1.4 least_conn 最少连接

web请求会被分发到连接数最少的服务器上;

示例:

 upstream www.zth.com{

         least_conn;

         server 172.17.0.2:8080 ;

         server 172.17.0.3:9090 ;

}

2.  Nginx 负载均衡备份和宕机

21. 备份 backup 配置;

其他非 backup 机器挂掉后,才会请求 backup 机器;

案例:

 upstream www.zth.com{

         server 172.17.0.2:8080 ;

         server 172.17.0.3:9090 backup ;

}

 

2.2 宕机down配置;

配置 down 的服务器不参与负载均衡;

upstream www.zth.com{

         server 172.17.0.2:8080 ;

         server 172.17.0.3:9090 down ;

}

3. Nginx 实现负载均衡

第一步:准备两个 tomcat

        运行 tomcat 容器,宿主机里 home目录下新建 tomcat1 和 tomcat2 目录,复制容器里 conf 到宿主机

        docker cp 容器id:/usr/local/tomcat/conf    /home/docker/tomcat1

        docker cp 容器id:/usr/local/tomcat/conf    /home/docker/tomcat2

         在 tomcat1 和 tomcat2 下新建 /webapps/ROOT/ index.html

第二步:修改 tomcat 配置

        修改端口分别是 8080 和 9090 以及两个tomcat默认页面内容改成 tomcat1 和 tomcat2

第三步:启动两个 tomcat 测试

docker run -d --name tomcat01 -p 8080:8080 -v /home/docker/tomcat2/conf/:/usr/local/tomcat/conf/ -v  /home/docker/tomcat2/webapps/:/usr/local/tomcat/webapps/ f6d5e523a1c9

docker run -d --name tomcat02 -p 9090:9090 -v /home/docker/tomcat2/conf/:/usr/local/tomcat/conf/ -v /home/docker/tomcat2/webapps/:/usr/local/tomcat/webapps/ f6d5e523a1c9

 

第四步:配置nginx.conf

docker 安装 https://blog.csdn.net/qq_41573234/article/details/106276626

在http模块下配置下加

upstream zth.com {
    server  172.17.0.2:8080 weight=5;
    server  172.17.0.3:9090 weight=10;
    }

 

第五步:修改 http 下的 server 模块

  location / {
        proxy_pass   http://zth.com;
    }

proxy_pass 配置 upstream 对象即可;

 

第六步:配置 hosts 文件

C:\Windows\System32\drivers\etc

192.168.214.10  www.zth.com

 

第七步:验证

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值