From fc8d23bcc5ee4302e83c12e1f720ca1d22deacbb Mon Sep 17 00:00:00 2001 From: Shelikhoo Date: Sat, 19 Jun 2021 12:35:46 +0100 Subject: [PATCH] added apply least ping strategy --- app/router/config.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/app/router/config.go b/app/router/config.go index 7e4bfb9f8..53a0e4b88 100644 --- a/app/router/config.go +++ b/app/router/config.go @@ -161,9 +161,17 @@ func (rr *RoutingRule) BuildCondition() (Condition, error) { func (br *BalancingRule) Build(ohm outbound.Manager, dispatcher routing.Dispatcher) (*Balancer, error) { switch br.Strategy { case "leastPing": + i, err := br.StrategySettings.GetInstance() + if err != nil { + return nil, err + } + s, ok := i.(*StrategyLeastPingConfig) + if !ok { + return nil, newError("not a StrategyLeastPingConfig").AtError() + } return &Balancer{ selectors: br.OutboundSelector, - strategy: &LeastPingStrategy{}, + strategy: &LeastPingStrategy{config: s}, ohm: ohm, }, nil case "leastLoad":