package ratelimiter

import "github.com/ydb-platform/ydb-go-sdk/v3/ratelimiter"

Index

Functions

func AcquireError

func AcquireError(amount uint64, err error) error

func WithAcquire

func WithAcquire() options.AcquireOption

func WithOperationCancelAfter

func WithOperationCancelAfter(operationCancelAfter time.Duration) options.AcquireOption

func WithOperationTimeout

func WithOperationTimeout(operationTimeout time.Duration) options.AcquireOption

func WithReportAsync

func WithReportAsync() options.AcquireOption

func WithReportSync

func WithReportSync() options.AcquireOption

Types

type Client

type Client interface {
	closer.Closer

	CreateResource(
		ctx context.Context,
		coordinationNodePath string,
		resource Resource,
	) (err error)
	AlterResource(
		ctx context.Context,
		coordinationNodePath string,
		resource Resource,
	) (err error)
	DropResource(
		ctx context.Context,
		coordinationNodePath string,
		resourcePath string,
	) (err error)
	ListResource(
		ctx context.Context,
		coordinationNodePath string,
		resourcePath string,
		recursive bool,
	) (_ []string, err error)
	DescribeResource(
		ctx context.Context,
		coordinationNodePath string,
		resourcePath string,
	) (_ *Resource, err error)
	AcquireResource(
		ctx context.Context,
		coordinationNodePath string,
		resourcePath string,
		amount uint64,
		opts ...options.AcquireOption,
	) (err error)
}

type HierarchicalDrrSettings

type HierarchicalDrrSettings struct {
	MaxUnitsPerSecond       float64
	MaxBurstSizeCoefficient float64
	PrefetchCoefficient     float64
	PrefetchWatermark       float64
}

type Resource

type Resource struct {
	ResourcePath    string
	HierarchicalDrr HierarchicalDrrSettings
}

Source Files

errors.go ratelimiter.go resource.go

Directories

PathSynopsis
ratelimiter/config
Version
v3.11.0-rc4
Published
Feb 20, 2022
Platform
js/wasm
Imports
5 packages
Last checked
19 minutes ago

Tools for package owners.