From 1447192a45224021f9dbaa53d032fd11de29c91e Mon Sep 17 00:00:00 2001 From: Newnius Date: Thu, 30 Apr 2020 22:19:24 +0800 Subject: [PATCH] update --- src/optimizer.go | 12 +++++++----- src/resource_pool.go | 1 + 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/optimizer.go b/src/optimizer.go index 3151839..c9a8f70 100644 --- a/src/optimizer.go +++ b/src/optimizer.go @@ -77,12 +77,14 @@ func (optimizer *Optimizer) feed(job string, utils []int) { if _, ok := optimizer.predicts[jobName]; !ok { optimizer.predicts[jobName] = &OptimizerJobExecutionTime{} } - postCnt *= optimizer.heartbeatInterval - preCnt *= optimizer.heartbeatInterval + postTime := postCnt * optimizer.heartbeatInterval + preTime := preCnt * optimizer.heartbeatInterval + totalTime := len(utils) * optimizer.heartbeatInterval + predict := optimizer.predicts[jobName] - predict.Pre = ((predict.Pre * predict.Version) + preCnt) / (predict.Version + 1) - predict.Post = ((predict.Post * predict.Version) + postCnt) / (predict.Version + 1) - predict.Total = ((predict.Total * predict.Version) + len(utils)) / (predict.Version + 1) + predict.Pre = ((predict.Pre * predict.Version) + preTime) / (predict.Version + 1) + predict.Post = ((predict.Post * predict.Version) + postTime) / (predict.Version + 1) + predict.Total = ((predict.Total * predict.Version) + totalTime) / (predict.Version + 1) predict.Main = predict.Total - predict.Pre - predict.Post if predict.Main < 0 { predict.Main = 0 diff --git a/src/resource_pool.go b/src/resource_pool.go index 66c1d0c..e00247a 100644 --- a/src/resource_pool.go +++ b/src/resource_pool.go @@ -313,5 +313,6 @@ func (pool *ResourcePool) pickNode(nodes []*NodeStatus) *NodeStatus { /* sort */ + return nodes[0] }