5.7.6. 负载均衡策略
当路由具有多个端点时,HAProxy 根据所选的负载均衡策略将请求分发到端点之间的路由。当没有可用的持久性信息时,会出现这种情况,如会话中的第一个请求。
策略可以是以下之一:
-
roundrobin
:每个端点依次使用,取决于它的权重。当服务器的处理时间保持平等时,这是最平滑和最公平的算法。 -
leastconn
:连接数量最低的端点接收请求。当多个端点具有相同最少的连接数时,将执行循环循环。期望较长的会话时使用此算法,如 LDAP、SQL、TSE 或其他算法。不可与通常使用短会话(如 HTTP)的协议一起使用。 -
源
:源 IP 地址的散列化,并划分到运行的服务器的总权重,以指定为哪些服务器接收请求。这可确保同一客户端 IP 地址始终到达同一服务器,只要没有服务器停机或启动。如果由于运行的服务器数量而变化的哈希结果,多个客户端将定向到不同的服务器。这个算法通常与 passthrough 路由一起使用。
ROUTER_TCP_BALANCE_SCHEME
环境变量 设置 passthrough 路由的默认策略。ROUTER_LOAD_BALANCE_ALGORITHM
环境变量 为剩余的路由设置路由器的默认策略。路由特定的注解 (haproxy.router.openshift.io/balance
)可用于控制特定的路由。