redis

package
v4.46.3 Latest Latest
Warning

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

Go to latest
Published: Aug 25, 2022 License: MIT Imports: 14 Imported by: 12

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrNoSubscriber = errors.New("no subscriber for channel")

ErrNoSubscriber occurs when a published message is not received by any subscriber.

Functions

func PullFor added in v4.44.0

func PullFor[T any](ctx context.Context, app App, key string, done <-chan struct{}, handler func(T, error))

PullFor pull with unmarshal of given type.

func SubscribeFor added in v4.44.0

func SubscribeFor[T any](ctx context.Context, app App, channel string, handler func(T, error)) func(context.Context) error

SubscribeFor pubsub with unmarshal of given type.

Types

type App

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

func New

func New(config Config, prometheusRegisterer prometheus.Registerer, tracer trace.Tracer) App

func (App) Delete

func (a App) Delete(ctx context.Context, keys ...string) error

Delete given keys.

func (App) Exclusive

func (a App) Exclusive(ctx context.Context, name string, timeout time.Duration, action func(context.Context) error) (acquired bool, err error)

Exclusive get an exclusive lock for given name during duration.

func (App) Load

func (a App) Load(ctx context.Context, key string) (string, error)

Load given key.

func (App) Ping

func (a App) Ping() error

Ping check redis availability.

func (App) Publish added in v4.44.0

func (a App) Publish(ctx context.Context, channel string, value any) error

Publish a message to a given channel.

func (App) Pull added in v4.44.0

func (a App) Pull(ctx context.Context, key string, done <-chan struct{}, handler func(string, error))

Pull tasks from a list.

func (App) Push added in v4.44.0

func (a App) Push(ctx context.Context, key string, value any) error

Push a task to a list.

func (App) Store

func (a App) Store(ctx context.Context, key string, value any, duration time.Duration) error

Store give key/val with duration.

func (App) Subscribe added in v4.44.0

func (a App) Subscribe(ctx context.Context, channel string) (<-chan *redis.Message, func(context.Context) error)

Subscribe to a given channel.

type Config

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

func Flags

func Flags(fs *flag.FlagSet, prefix string, overrides ...flags.Override) Config

Jump to

Keyboard shortcuts

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