nginx配置负载均衡策略

nginx的负载均衡策略常用的主要有以下四种:

1、轮训(默认),nginx会按请求的时间顺序分配到172.0.0.2和172.0.0.3,如果有出现后端节点故障就会被剔除

复制代码
upstream a_server{
    server 172.0.0.2:8080;
    server 172.0.0.3:8080;
}

server{
    listen    80;
    server_name    172.0.0.1;

    location /a/{
        proxy_pass    http://a_server;
    }
}
复制代码

2、权重,weight表示权重,值越大表示权重越高,被分配的请求也就越多

复制代码
upstream a_server{
    server 172.0.0.2:8080 weight=1;
    server 172.0.0.3:8080 weight=2;
}

server{
    listen    80;
    server_name    172.0.0.1;

    location /a/{
        proxy_pass    http://a_server;
    }
}
复制代码

3、IP HASH,nginx会根据ip的hash结果来分配请求,每个请求会被分配到同一个后端节点,保持会话,session同步

复制代码
upstream a_server{
    ip_hash;
    server 172.0.0.2:8080;
    server 172.0.0.3:8080;
}

server{
    listen    80;
    server_name    172.0.0.1;

    location /a/{
        proxy_pass    http://a_server;
    }
}
复制代码

4、最小连接,新的请求会被分配到当前最小连接的后端节点

复制代码
upstream a_server{
    least_conn;
    server 172.0.0.2:8080;
    server 172.0.0.3:8080;
}

server{
    listen    80;
    server_name    172.0.0.1;

    location /a/{
        proxy_pass    http://a_server;
    }
}
复制代码

 

posted @   opscool  阅读(1168)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器
点击右上角即可分享
微信分享提示