专栏名称: go4it
目录
相关文章推荐
雨果网  ·  注意 | ... ·  9 小时前  
51好读  ›  专栏  ›  go4it

聊聊cortex的Backoff

go4it  · 掘金  ·  · 2021-01-22 23:12

正文

阅读 83

聊聊cortex的Backoff

本文主要研究一下cortex的Backoff

Backoff

github.com/cortexproject/cortex/pkg/util/backoff.go

// Backoff implements exponential backoff with randomized wait times
type Backoff struct {
	cfg          BackoffConfig
	ctx          context.Context
	numRetries   int
	nextDelayMin time.Duration
	nextDelayMax time.Duration
}

// NewBackoff creates a Backoff object. Pass a Context that can also terminate the operation.
func NewBackoff(ctx context.Context, cfg BackoffConfig) *Backoff {
	return &Backoff{
		cfg:          cfg,
		ctx:          ctx,
		nextDelayMin: cfg.MinBackoff,
		nextDelayMax: doubleDuration(cfg.MinBackoff, cfg.MaxBackoff),
	}
}
复制代码






请到「今天看啥」查看全文