返回顶部

Nginx反向代理、负载均衡、故障转移

nginx下载官网:http://nginx.org/en/download.html

nginx帮助文档:http://nginx.org/en/docs/

 

一、负载均衡

nginx的配置文件默认路径在 /etc/nginx/nginx.conf

 1、轮询(默认)

在http节点下添加如下配置,然后重启nginx服务即可

 server {
        # 监听端口默认是80
        listen 80;

        # 服务器ip或域名
        server_name 192.168.140.130;
         location / {
             # 反向代理
             proxy_pass http://xiaohemiao;

         }
    }

    upstream xiaohemiao {
        
        server 192.168.140.130:7777; # 应用端口7777
        server 192.168.140.130:8888; # 应用端口8888
    }

2、ip_hash一致性算法

保证每个访客固定访问一个后端服务器

在upstream节点添加如下配置即可

upstream xiaohemiao {
        ip_hash;
        server 192.168.140.130:7777; # 应用端口7777
        server 192.168.140.130:8888; # 应用端口8888
    }

3、least_conn最小活跃数算法

把请求转发给连接数较少的后端服务器,配置如下

upstream xiaohemiao {
       least_conn;
        server 192.168.140.130:7777; # 应用端口7777
        server 192.168.140.130:8888; # 应用端口8888
    }

4、weight权重

upstream xiaohemiao {

        server 192.168.140.130:7777 weight=5; # 应用端口7777
        server 192.168.140.130:8888 weight=20; # 应用端口8888
    }

二、故障转移

  • fail_timeout:与max_fails结合使用
  • max_fails:设置在fail_timeout参数设置的时间内最大失败次数,如果在这个时间内,所有针对该服务器的请求都失败了,那么认为该服务器会被认为是停机了
  • fail_time:服务器被认为停机的时间长度,默认为10s
  • backup:标记该服务器为备用服务器,当主服务停止时,请求会被发送到这台服务器
 upstream xiaohemiao {

        server 192.168.140.130:7777 max_fails=2 fail_timeout=10s; # 应用端口7777
        server 192.168.140.130:8888; # 应用端口8888
        server 192.168.140.130:9999 backup; #备机,当7777、8888应用都宕机之后会自动转移请求到9999端口上
    }

 

posted @ 2022-05-19 23:29  SportSky  阅读(950)  评论(0编辑  收藏  举报
作者:SportSky 出处: http://www.cnblogs.com/sportsky/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。如果觉得还有帮助的话,可以点一下右下角的【推荐】,希望能够持续的为大家带来好的技术文章!想跟我一起进步么?那就【关注】我吧。