fn: cleanup of unused/global constants in lb agent (#1020)

Moved retry interval as placer member variable for time-being.
This commit is contained in:
Tolga Ceylan
2018-05-31 13:04:06 -07:00
committed by GitHub
parent a282005bf7
commit e1b7e30e49
3 changed files with 12 additions and 33 deletions

View File

@@ -7,18 +7,21 @@ import (
"context"
"time"
"github.com/fnproject/fn/api/common"
"github.com/fnproject/fn/api/models"
"github.com/dchest/siphash"
"github.com/sirupsen/logrus"
)
type chPlacer struct{}
type chPlacer struct {
rrInterval time.Duration
}
func NewCHPlacer() Placer {
logrus.Info("Creating new CH runnerpool placer")
return &chPlacer{}
return &chPlacer{
rrInterval: 10 * time.Millisecond,
}
}
// This borrows the CH placement algorithm from the original FNLB.
@@ -62,18 +65,13 @@ func (p *chPlacer) PlaceCall(rp RunnerPool, ctx context.Context, call RunnerCall
}
}
remaining := call.LbDeadline().Sub(time.Now())
if remaining <= 0 {
return models.ErrCallTimeoutServerBusy
}
// backoff
select {
case <-ctx.Done():
return models.ErrCallTimeoutServerBusy
case <-timeout:
return models.ErrCallTimeoutServerBusy
case <-time.After(common.MinDuration(retryWaitInterval, remaining)):
case <-time.After(p.rrInterval):
}
}
}