memcachedkv

package
v4.5.1 Latest Latest
Warning

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

Go to latest
Published: May 2, 2024 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	// Addr is url for memcached, 11211 port is used by default
	Addr []string
}

func (*Config) InitDefaults

func (s *Config) InitDefaults()

type Configurer

type Configurer interface {
	// UnmarshalKey takes a single key and unmarshal it into a Struct.
	UnmarshalKey(name string, out any) error
	// Has checks if config section exists.
	Has(name string) bool
}

type Driver

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

func NewMemcachedDriver

func NewMemcachedDriver(log *zap.Logger, key string, cfgPlugin Configurer, tracer *sdktrace.TracerProvider) (*Driver, error)

NewMemcachedDriver returns a memcache client using the provided server(s) with equal weight. If a server is listed multiple times, it gets a proportional amount of weight.

func (*Driver) Clear

func (d *Driver) Clear() error

func (*Driver) Delete

func (d *Driver) Delete(keys ...string) error

func (*Driver) Get

func (d *Driver) Get(key string) ([]byte, error)

Get gets the item for the given key. ErrCacheMiss is returned for a memcache cache miss. The key must be at most 250 bytes in length.

func (*Driver) Has

func (d *Driver) Has(keys ...string) (map[string]bool, error)

Has checks the key for existence

func (*Driver) MExpire

func (d *Driver) MExpire(items ...kv.Item) error

MExpire Expiration is the cache expiration time, in seconds: either a relative time from now (up to 1 month), or an absolute Unix epoch time. Zero means the Item has no expiration time.

func (*Driver) MGet

func (d *Driver) MGet(keys ...string) (map[string][]byte, error)

MGet return map with key -- string and map value as value -- []byte

func (*Driver) Set

func (d *Driver) Set(items ...kv.Item) error

Set sets the KV pairs. Keys should be 250 bytes maximum TTL: Expiration is the cache expiration time, in seconds: either a relative time from now (up to 1 month), or an absolute Unix epoch time. Zero means the Item has no expiration time.

func (*Driver) Stop

func (d *Driver) Stop()

func (*Driver) TTL

func (d *Driver) TTL(_ ...string) (map[string]string, error)

TTL return time in seconds (int32) for a given keys

Jump to

Keyboard shortcuts

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