负载均衡

负载均衡方法的种类

官方文档:https://nginx.org/en/docs/http/load_balancing.htmlarrow-up-right

Nginx 支持多种负载均衡方法,常见的包括:

  • round-robin

  • weight

  • least_conn

  • ip_hash

  • url_hash(第三方)

  • fail(第三方)

round-robin(轮询,Nginx默认的配置)

轮询算法会将每个新的连接请求分配到下一个服务器,如果所有服务器都为down,则请求会分配给down后的服务器

upstream myapp1 {
    server 192.168.1.11:80;
    server 192.168.1.12:80;
    server 192.168.1.13:80;
}

weight(加权轮询)

可以给不同的服务器设置不同的权重

least_conn(最少连接)

将新的连接请求分配到连接数最少的服务器

ip_hash(IP哈希)

根据客户端IP地址进行哈希计算,同一个客户端IP地址总是被映射到同一个服务器

url_hash(URL哈希)

根据客户端URL地址进行哈希计算,同一个URL地址总是被映射到同一个服务器

fair

根据服务器端的响应时间来分配请求,响应时间短的优先分配

案例演示(轮询)

服务器规划

负载均衡服务器的 nginx 配置(192.168.31.19)

后端 web01 服务器的 nginx 配置(192.168.31.21)

后端 web02 服务器的 nginx 配置(192.168.31.22)

Last updated