redis

package
v1.3.0 Latest Latest
Warning

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

Go to latest
Published: Jul 15, 2026 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Options

type Options struct {
	Addr     string
	Password string
	DB       int
}

Options defines the connection parameters for Redis.

type Store

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

func New

func New(opts Options) *Store

New creates a new Redis cache store.

func (*Store) AcquireLock added in v1.2.0

func (s *Store) AcquireLock(ctx context.Context, key string, ttl time.Duration) (bool, func() error, error)

AcquireLock implements quark.CacheLocker (ADR-0020) via SET NX with a TTL: the first caller across all processes claims the key with a unique token and gets acquired=true; concurrent callers get false. release runs a token-checked Lua delete so only the current holder unlocks. The TTL guarantees a crashed holder cannot wedge the key. The caller (the stampede wrapper) supplies an already-namespaced key.

func (*Store) Delete

func (s *Store) Delete(ctx context.Context, key string) error

func (*Store) Get

func (s *Store) Get(ctx context.Context, key string) ([]byte, error)

func (*Store) InvalidateTags

func (s *Store) InvalidateTags(ctx context.Context, tags ...string) error

func (*Store) Ping

func (s *Store) Ping(ctx context.Context) error

Ping checks the connectivity to the Redis server.

func (*Store) Set

func (s *Store) Set(ctx context.Context, key string, val []byte, ttl time.Duration, tags ...string) error

Jump to

Keyboard shortcuts

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