unique

package
v0.3.1 Latest Latest
Warning

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

Go to latest
Published: Aug 17, 2024 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrDedupDuration is returned when UniqueFunc returns a non-positive duration.
	// The dedup key will expire too soon in redis.
	ErrDedupDuration = errors.New("work: unique duration should be > 0")
)

Functions

func Enqueuer

func Enqueuer(eopt *EnqueuerOptions) work.EnqueueMiddleware

Enqueuer uses UniqueFunc to ensure job uniqueness in a period.

Types

type EnqueuerOptions

type EnqueuerOptions struct {
	Client redis.UniversalClient
	// If returned []byte is nil, uniqueness check is bypassed.
	// Returned time.Duration controls how long the unique key exists.
	UniqueFunc Func
}

EnqueuerOptions defines job unique key generation.

type Func

type Func func(*work.Job, *work.EnqueueOptions) ([]byte, time.Duration, error)

Func defines job uniqueness.

Jump to

Keyboard shortcuts

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