redis

package
v4.44.0 Latest Latest
Warning

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

Go to latest
Published: Jul 20, 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
}

App of package

func New

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

New creates new App from Config

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
}

Config of package

func Flags

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

Flags adds flags for configuring package

Jump to

Keyboard shortcuts

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