我有一个Haproxy 1.5.4。我想配置haproxy为每个请求使用不同的后端。这样,我想确保每个请求都使用不同的后端。我主动使用以下配置:
global
daemon
maxconn 500000
nbproc 2
log 127.0.0.1 local0 info
defaults
mode tcp
timeout connect 50000ms
timeout client 500000ms
timeout server 500000ms
timeout check 5s
timeout tunnel 50000ms
option redispatch
listen httptat *:3310
mode http
stats enable
stats refresh 5s
stats uri /httpstat
stats realm HTTPS proxy stats
stats auth https:xxxxxxxxxxx
listen HTTPS *:5008
mode tcp
#maxconn 50000
balance leastconn
server backend1 xxx.xxx.xxx.xxx:125 check
server backend1 xxx.xxx.xxx.xxx:126 check
server backend1 xxx.xxx.xxx.xxx:127 check
server backend1 xxx.xxx.xxx.xxx:128 check
server backend1 xxx.xxx.xxx.xxx:129 check
server backend1 xxx.xxx.xxx.xxx:130 check
......
答案 0 :(得分:2)
只需将余额设置从leastconn
更改为roundrobin
来自haproxy手册1.5:
roundrobin
每个服务器根据其权重轮流使用。
这是服务器时最流畅,最公平的算法
处理时间保持平均分配。这个算法
是动态的,这意味着可以调整服务器权重
例如,在慢速启动时。受到限制
设计为每个后端4095个活动服务器。请注意,在一些
大型农场,当服务器在关闭后升级
在很短的时间内,它有时可能需要几百个
要求将其重新集成到农场并开始
接收流量。这很正常,但非常罕见。它是
如果您有机会观察,请在此处注明
它,所以你不用担心。
https://cbonte.github.io/haproxy-dconv/1.5/configuration.html#4-balance