两种 Haproxy 配置之间的差异

两种 Haproxy 配置之间的差异

接下来,我将展示两种平衡服务器的配置。我看到,这两种配置具有相同的性能。那么在第一个配置中使用备份来备份最后一个服务器 4 有什么用呢?

第一个配置

listen web_cluster 0.0.0.0:1513
    mode tcp
    balance roundrobin
    option httpchk
    default-server port 9200 inter 2s downinter 5s rise 3 fall 2 slowstart 60s maxconn 500 maxqueue 200
    server server-1 172.24.2.11:80 check weight 200
    server server-2 172.24.2.12:80 check weight 150
    server server-3 172.24.2.13:80 check weight 100
    server server-4 172.24.2.14:80 check backup

第二个配置

listen web_cluster 0.0.0.0:1513
    mode tcp
    balance roundrobin
    option httpchk
    default-server port 9200 inter 2s downinter 5s rise 3 fall 2 slowstart 60s maxconn 500 maxqueue 200
    server server-1 172.24.2.11:80 check weight 200
    server server-2 172.24.2.12:80 check weight 150
    server server-3 172.24.2.13:80 check weight 100
    server server-4 172.24.2.14:80 check weight 50

答案1

来自HAProxy 手册

当服务器行中存在“backup”时,该服务器仅在所有其他非备份服务器都不可用时用于负载平衡。但是,带有引用该服务器的持久性 cookie 的请求将始终得到服务。默认情况下,仅使用第一个可操作的备份服务器,除非在后端设置了“allbackups”选项。另请参阅“no-backup”和“allbackups”选项。

换句话说,这两个配置的区别在于,在第一个配置中,server-4 将看到完全没有交通除非服务器 1 到 3 发生故障,而在第二个服务器中它将接收一些交通状况始终良好。

相关内容