package
0.1.1
Repository: https://github.com/kubevela/kube-trigger.git
Documentation: pkg.go.dev

# Functions

DefaultControllerRateLimiter is a no-arg constructor for a default rate limiter for a workqueue.
DefaultItemBasedRateLimiter is a no-arg constructor for a default rate limiter for a workqueue.
New constructs a new work queue (see the package comment).
NewDelayingQueue constructs a new workqueue with delayed queuing ability.
NewDelayingQueueWithCustomClock constructs a new named workqueue with ability to inject real or fake clock for testing purposes.
NewDelayingQueueWithCustomQueue constructs a new workqueue with ability to inject custom queue Interface instead of the default one.
NewIndexerDelayingQueue .
NewItemExponentialFailureRateLimiter creates a new ItemExponentialFailureRateLimiter.
NewItemFastSlowRateLimiter creates a new ItemFastSlowRateLimiter.
NewMaxOfRateLimiter creates a new MaxOfRateLimiter.
NewNamed .
NewNamedDelayingQueue constructs a new named workqueue with delayed queuing ability.
NewNamedRateLimitingQueue constructs a new workqueue with rateLimited queuing ability.
NewRateLimitingQueue constructs a new workqueue with rateLimited queuing ability Remember to call Forget! If you don't, you may end up tracking failures forever.
NewWithMaxWaitRateLimiter creates a new WithMaxWaitRateLimiter.
ParallelizeUntil is a framework that allows for parallelizing N independent pieces of work until done or the context is canceled.
SetProvider sets the metrics provider for all subsequently created work queues.
WithChunkSize allows to set chunks of work items to the workers, rather than processing one by one.

# Structs

BucketRateLimiter adapts a standard bucket to the workqueue ratelimiter API.
ItemExponentialFailureRateLimiter does a simple baseDelay*2^<num-failures> limit dealing with max failures and expiration are up to the caller.
ItemFastSlowRateLimiter does a quick retry for a certain number of attempts, then a slow retry after that.
MaxOfRateLimiter calls every RateLimiter and returns the worst case response When used with a token bucket limiter, the burst could be apparently exceeded in cases where particular items were separately delayed a longer time.
Type is a work queue (see the package comment).
WithMaxWaitRateLimiter have maxDelay which avoids waiting too long.

# Interfaces

Compared .
CounterMetric represents a single numerical value that only ever goes up.
DelayingInterface is an Interface that can Add an item at a later time.
GaugeMetric represents a single numerical value that can arbitrarily go up and down.
HistogramMetric counts individual observations.
Interface is an abstract, pluggable interface for work queues.
MetricsProvider generates various metrics used by the queue.
RateLimiter .
RateLimitingInterface is an interface that rate limits items being added to the queue.
SettableGaugeMetric represents a single numerical value that can arbitrarily go up and down.
SummaryMetric captures individual observations.

# Type aliases

DoWorkPieceFunc is a function that is called for each piece of work.
Options is a function that sets options on the options struct.