Documentation ¶
Overview ¶
Package cache defines the Trickster cache interfaces and provides general cache functionality
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrKNF = errors.New("key not found in cache")
ErrKNF represents the error "key not found in cache"
Functions ¶
This section is empty.
Types ¶
type Cache ¶
type Cache interface { Connect() error Store(cacheKey string, data []byte, ttl time.Duration) error Retrieve(cacheKey string, allowExpired bool) ([]byte, status.LookupStatus, error) SetTTL(cacheKey string, ttl time.Duration) Remove(cacheKey string) BulkRemove(cacheKeys []string) Close() error Configuration() *options.Options Locker() locks.NamedLocker SetLocker(locks.NamedLocker) }
Cache is the interface for the supported caching fabrics When making new cache providers, Retrieve() must return an error on cache miss
type MemoryCache ¶
type MemoryCache interface { Connect() error Store(cacheKey string, data []byte, ttl time.Duration) error Retrieve(cacheKey string, allowExpired bool) ([]byte, status.LookupStatus, error) SetTTL(cacheKey string, ttl time.Duration) Remove(cacheKey string) BulkRemove(cacheKeys []string) Close() error Configuration() *options.Options StoreReference(cacheKey string, data ReferenceObject, ttl time.Duration) error RetrieveReference(cacheKey string, allowExpired bool) (interface{}, status.LookupStatus, error) Locker() locks.NamedLocker SetLocker(locks.NamedLocker) }
MemoryCache is the interface for an in-memory cache This offers an additional method for storing references to bypass serialization
type ReferenceObject ¶
type ReferenceObject interface {
Size() int
}
ReferenceObject defines an interface for a cache object possessing the ability to report the approximate comprehensive byte size of its members, to assist with cache size management
Directories ¶
Path | Synopsis |
---|---|
Package badger is the BadgerDB implementation of the Trickster Cache
|
Package badger is the BadgerDB implementation of the Trickster Cache |
Package bbolt is the bbolt implementation of the Trickster Cache
|
Package bbolt is the bbolt implementation of the Trickster Cache |
Package filesystem is the filesystem implementation of the Trickster Cache
|
Package filesystem is the filesystem implementation of the Trickster Cache |
Package index defines the Trickster Cache Index
|
Package index defines the Trickster Cache Index |
Package memory is the memory implementation of the Trickster Cache and uses a sync.Map to manage cache objects
|
Package memory is the memory implementation of the Trickster Cache and uses a sync.Map to manage cache objects |
Package negative defines the Negative Cache which is a simple lookup map of httpStatus to TTL in milliseconds
|
Package negative defines the Negative Cache which is a simple lookup map of httpStatus to TTL in milliseconds |
Package redis is the redis implementation of the Trickster Cache and supports Standalone, Sentinel and Cluster
|
Package redis is the redis implementation of the Trickster Cache and supports Standalone, Sentinel and Cluster |
Package registration handles the registration of cache implementations to be used by proxy cache handlers
|
Package registration handles the registration of cache implementations to be used by proxy cache handlers |
Package status governs the possible Cache Lookup Status values
|
Package status governs the possible Cache Lookup Status values |
Click to show internal directories.
Click to hide internal directories.