From 557297ac9a87394d9133f28e0f9527fb607197e3 Mon Sep 17 00:00:00 2001 From: Dreamacro <8615343+Dreamacro@users.noreply.github.com> Date: Mon, 4 Jul 2022 21:36:33 +0800 Subject: [PATCH] Chore: load balance hash need to have fallback strategy --- adapter/outboundgroup/loadbalance.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/adapter/outboundgroup/loadbalance.go b/adapter/outboundgroup/loadbalance.go index f396ff04..95fee89d 100644 --- a/adapter/outboundgroup/loadbalance.go +++ b/adapter/outboundgroup/loadbalance.go @@ -127,6 +127,13 @@ func strategyConsistentHashing() strategyFn { } } + // when availability is poor, traverse the entire list to get the available nodes + for _, proxy := range proxies { + if proxy.Alive() { + return proxy + } + } + return proxies[0] } }