首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Nginx负载均衡策略

Nginx负载均衡策略

作者头像
用户2409797
发布2019-02-25 15:20:09
7630
发布2019-02-25 15:20:09
举报

Nginx负载均衡策略

一、轮询(round-robin)

这是nginx默认的负载均衡策略

配置:

upstream app.com {    #集群
    server 127.0.0.1:8080;    #server1
    server 127.0.0.1:8081;    #server2
}

解释:

加入同一时刻有10个request,那么该集群的处理顺序就是:server1、server2、server1、server2、server1、server2...

二、最少连接(least-connected)

配置:

upstream app.com {    #集群
    least_conn;
    server 127.0.0.1:8080;    #server1
    server 127.0.0.1:8081;    #server2
}

解释:

当request到达时,nginx会将该request分配给连接数最少的server

三、权重(weighted)

nginx默认给每个server的权重都是1,代表每个server的负载是一样的。

但可以配置使得一些server负载重一些,一些server负载轻一些

配置:

upstream app.com {    #集群
    server 127.0.0.1:8080 weight=2;    #server1
    server 127.0.0.1:8081 weight=1;    #server2
}

解释:

此时server1的权重是server2的两倍,代表每有3个request,前两个分配给server1,最后一个分配给server2

四、session持久化(ip_hash)

前面三种策略都无法保证client的session能被保存,因为同一个client的request可能被不同的server处理

ip_hash这种策略将client的ip进行hash运算,同一个hash值的ip只会被分配到同一个server(但要保证所有的server都不会down)

配置:

upstream app.com {    #集群
    ip_hash;
    server 127.0.0.1:8080;    #server1
    server 127.0.0.1:8081;    #server2
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-11-29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Nginx负载均衡策略
    • 一、轮询(round-robin)
      • 二、最少连接(least-connected)
        • 三、权重(weighted)
          • 四、session持久化(ip_hash)
          相关产品与服务
          负载均衡
          负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档