avoid frequent DNS lookups for baremetal setups (#11972)

bump up the DNS cache for baremetal setups upto 10 minutes
This commit is contained in:
Harshavardhana
2021-04-08 17:51:59 -07:00
committed by GitHub
parent 05a9108c24
commit 89d58bec16
3 changed files with 25 additions and 5 deletions

View File

@@ -121,6 +121,8 @@ func NewDNSCache(freq time.Duration, lookupTimeout time.Duration, loggerOnce fun
doneCh: make(chan struct{}),
}
rnd := rand.New(rand.NewSource(time.Now().UnixNano()))
timer := time.NewTimer(freq)
go func() {
defer timer.Stop()
@@ -128,7 +130,10 @@ func NewDNSCache(freq time.Duration, lookupTimeout time.Duration, loggerOnce fun
for {
select {
case <-timer.C:
timer.Reset(freq)
// Make sure that refreshes on DNS do not be attempted
// at the same time, allows for reduced load on the
// DNS servers.
timer.Reset(time.Duration(rnd.Float64() * float64(freq)))
r.Refresh()
case <-r.doneCh: