From fc9a6dc241658bfe475ca12afa236f717dbb963b Mon Sep 17 00:00:00 2001 From: wei liu Date: Fri, 14 Jul 2023 10:02:31 +0800 Subject: [PATCH] fix compute score on replica selection (#25582) Signed-off-by: Wei Liu --- internal/proxy/look_aside_balancer.go | 4 ++-- internal/proxy/look_aside_balancer_test.go | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/internal/proxy/look_aside_balancer.go b/internal/proxy/look_aside_balancer.go index ad8a092cfa..11293ad846 100644 --- a/internal/proxy/look_aside_balancer.go +++ b/internal/proxy/look_aside_balancer.go @@ -151,8 +151,8 @@ func (b *LookAsideBalancer) calculateScore(node int64, cost *internalpb.CostAggr return 0 } - executeSpeed := float64(cost.ResponseTime) - float64(1)/float64(cost.ServiceTime) - workload := math.Pow(float64(1+cost.TotalNQ+executingNQ), 3.0) / float64(cost.ServiceTime) + executeSpeed := float64(cost.ResponseTime) - float64(cost.ServiceTime) + workload := math.Pow(float64(1+cost.TotalNQ+executingNQ), 3.0) * float64(cost.ServiceTime) if workload < 0.0 { return math.MaxFloat64 } diff --git a/internal/proxy/look_aside_balancer_test.go b/internal/proxy/look_aside_balancer_test.go index b2f8605be3..9cee27b360 100644 --- a/internal/proxy/look_aside_balancer_test.go +++ b/internal/proxy/look_aside_balancer_test.go @@ -98,7 +98,7 @@ func (suite *LookAsideBalancerSuite) TestCalculateScore() { score3 := suite.balancer.calculateScore(-1, costMetrics3, 0) score4 := suite.balancer.calculateScore(-1, costMetrics4, 0) suite.Equal(float64(12), score1) - suite.Equal(float64(8.5), score2) + suite.Equal(float64(19), score2) suite.Equal(float64(17), score3) suite.Equal(float64(5), score4) @@ -107,7 +107,7 @@ func (suite *LookAsideBalancerSuite) TestCalculateScore() { score7 := suite.balancer.calculateScore(-1, costMetrics3, 5) score8 := suite.balancer.calculateScore(-1, costMetrics4, 5) suite.Equal(float64(347), score5) - suite.Equal(float64(176), score6) + suite.Equal(float64(689), score6) suite.Equal(float64(352), score7) suite.Equal(float64(220), score8) @@ -200,7 +200,7 @@ func (suite *LookAsideBalancerSuite) TestSelectNode() { executingNQ: map[int64]int64{1: 0, 2: 0, 3: 0}, requestCount: 100, - result: map[int64]int64{1: 27, 2: 34, 3: 39}, + result: map[int64]int64{1: 40, 2: 32, 3: 28}, }, { name: "one qn has task in queue",