Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type MemoryCache ¶
type MemoryCache struct {
// contains filtered or unexported fields
}
MemoryCache uses memory for cache purpose
func NewMemoryCache ¶
func NewMemoryCache(maxSize int64) *MemoryCache
NewMemoryCache returns instance of memory cache
func (*MemoryCache) Delete ¶
func (c *MemoryCache) Delete(obj *object.FileObject) error
Delete remove given response from cache
func (*MemoryCache) Get ¶
func (c *MemoryCache) Get(obj *object.FileObject) (*response.Response, error)
Get returns a view of the cached response (zero-copy). The view shares the underlying buffer with the cached response, eliminating the need to copy the full response body on every cache hit.
func (*MemoryCache) Set ¶
func (c *MemoryCache) Set(obj *object.FileObject, res *response.Response) error
Set put response to cache. Cache takes ownership of the response - no copying. The response must be buffered before caching. This eliminates one full copy compared to the previous implementation that copied on both Set and Get.
type RedisCache ¶
type RedisCache struct {
// contains filtered or unexported fields
}
RedisCache store response in redis
func NewRedis ¶
func NewRedis(redisAddress []string, clientConfig map[string]string, cfg CacheCfg) *RedisCache
NewRedis create connection to redis and update it config from clientConfig map
func NewRedisCluster ¶ added in v0.15.0
func NewRedisCluster(redisAddress []string, clientConfig map[string]string, cfg CacheCfg) *RedisCache
func (*RedisCache) Delete ¶
func (c *RedisCache) Delete(obj *object.FileObject) error
Delete remove response from cache
func (*RedisCache) Get ¶
func (c *RedisCache) Get(obj *object.FileObject) (*response.Response, error)
Get returns response from cache or error
func (*RedisCache) Set ¶
func (c *RedisCache) Set(obj *object.FileObject, res *response.Response) error
Set put response into cache
type ResponseCache ¶
type ResponseCache interface {
Set(obj *object.FileObject, res *response.Response) error
Get(obj *object.FileObject) (*response.Response, error)
Delete(obj *object.FileObject) error
}
ResponseCache is interface for caching of mort responses
func Create ¶
func Create(cacheCfg config.CacheCfg) ResponseCache
Create returns instance of Response cache