【Nginx基础】Nginx常见负载均衡策略配置示例

下面是一些常用的Nginx负载均衡策略及其配置示例:

  1. 轮询(Round Robin)

这是默认的负载均衡策略,它将请求依次分配给不同的后端服务器。

upstream backend {
    server backend1.example.com;
    server backend2.example.com;
    server backend3.example.com;
}
  1. IP哈希(IP Hash)

此策略基于客户端IP地址计算哈希值,然后将请求发送到具有该哈希值的服务器。

upstream backend {
    ip_hash;
    server backend1.example.com;
    server backend2.example.com;
    server backend3.example.com;
}
  1. 最少连接(Least Connections)

此策略将请求发送到当前具有最少活动连接数的服务器。

upstream backend {
    least_conn;
    server backend1.example.com;
    server backend2.example.com;
    server backend3.example.com;
}
  1. 加权轮询(Weighted Round Robin)

此策略与轮询相似,但是可以为不同的服务器分配不同的权重。

upstream backend {
    server backend1.example.com weight=3;
    server backend2.example.com weight=2;
    server backend3.example.com weight=1;
}

在这个例子中,每个请求将被分配给一个后端服务器,但是第一个服务器将获得三倍于第三个服务器的请求。

  1. 加权最少连接(Weighted Least Connections)

此策略与最少连接策略相似,但是可以为不同的服务器分配不同的权重。

upstream backend {
    least_conn;
    server backend1.example.com weight=3;
    server backend2.example.com weight=2;
    server backend3.example.com weight=1;
}

在这个例子中,每个请求将被发送到当前具有最少活动连接数的服务器,但是第一个服务器将获得三倍于第三个服务器的连接数。

以上是一些常用的Nginx负载均衡策略及其配置示例,您可以根据实际需求选择合适的策略。