kratos: github.com/bilibili/kratos/pkg/net/netutil Index | Files | Directories

package netutil

import "github.com/bilibili/kratos/pkg/net/netutil"

Index

Package Files

backoff.go

Variables

var DefaultBackoffConfig = BackoffConfig{
    MaxDelay:  120 * time.Second,
    BaseDelay: 1.0 * time.Second,
    Factor:    1.6,
    Jitter:    0.2,
}

DefaultBackoffConfig uses values specified for backoff in common.

type Backoff Uses

type Backoff interface {
    // Backoff returns the amount of time to wait before the next retry given
    // the number of consecutive failures.
    Backoff(retries int) time.Duration
}

Backoff defines the methodology for backing off after a call failure.

type BackoffConfig Uses

type BackoffConfig struct {
    // MaxDelay is the upper bound of backoff delay.
    MaxDelay time.Duration

    // baseDelay is the amount of time to wait before retrying after the first
    // failure.
    BaseDelay time.Duration

    // factor is applied to the backoff after each retry.
    Factor float64

    // jitter provides a range to randomize backoff delays.
    Jitter float64
}

BackoffConfig defines the parameters for the default backoff strategy.

func (*BackoffConfig) Backoff Uses

func (bc *BackoffConfig) Backoff(retries int) time.Duration

Backoff returns the amount of time to wait before the next retry given the number of consecutive failures.

Directories

PathSynopsis
breaker

Package netutil imports 2 packages (graph). Updated 2019-05-04. Refresh now. Tools for package owners.