cache

package
v0.46.14 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 3, 2025 License: GPL-3.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ClientCache

type ClientCache struct {
	// contains filtered or unexported fields
}

ClientCache is a structure around frostfs-sdk-go/client to reuse already created clients.

func NewSDKClientCache

func NewSDKClientCache(opts ClientCacheOpts) *ClientCache

NewSDKClientCache creates instance of client cache. `opts` are used for new client creation.

func (*ClientCache) CloseAll

func (c *ClientCache) CloseAll()

CloseAll closes underlying connections of all cached clients.

Ignores closing errors.

func (*ClientCache) Get

Get function returns existing client or creates a new one.

type ClientCacheOpts

type ClientCacheOpts struct {
	DialTimeout      time.Duration
	StreamTimeout    time.Duration
	ReconnectTimeout time.Duration
	Key              *ecdsa.PrivateKey
	ResponseCallback func(client.ResponseMetaInfo) error
	AllowExternal    bool
	DialerSource     *net.DialerSource
	RetryPolicy      *RetryPolicy
	RetryThrottling  *RetryThrottling
}

type RetryPolicy added in v0.46.10

type RetryPolicy struct {
	MaxAttempts       uint64
	InitialBackoff    time.Duration
	MaxBackoff        time.Duration
	BackoffMultiplier float64
}

type RetryThrottling added in v0.46.10

type RetryThrottling struct {
	MaxTokens  int64
	TokenRatio int64
	TokenDec   int64
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL