Go to file
Gusted a206ac81c4 Give each implementation it's own package (#11)
- This allows the developer to only add the implementations they like to
use. So not everything is compiled, even the non-used implementation.
- This is a breaking change.

Reviewed-on: go-chi/cache#11
Co-authored-by: Gusted <williamzijl7@hotmail.com>
Co-committed-by: Gusted <williamzijl7@hotmail.com>
11 months ago
ledis Give each implementation it's own package (#11) 11 months ago
memcache Give each implementation it's own package (#11) 11 months ago
mysql Give each implementation it's own package (#11) 11 months ago
nodb Give each implementation it's own package (#11) 11 months ago
postgres Give each implementation it's own package (#11) 11 months ago
redis Give each implementation it's own package (#11) 11 months ago
.drone.yml Rework tests & ci pipeline (#6) 11 months ago
.gitignore Rework tests & ci pipeline (#6) 11 months ago
LICENSE Initial commit 9 years ago
README.md Update project aim and description (#10) 11 months ago
cache.go Update project aim and description (#10) 11 months ago
cache_test.go Rework tests & ci pipeline (#6) 11 months ago
file.go Add Ping to Interface (#4) 11 months ago
file_test.go Rework tests & ci pipeline (#6) 11 months ago
go.mod Rework tests & ci pipeline (#6) 11 months ago
go.sum Rework tests & ci pipeline (#6) 11 months ago
memory.go Add Ping to Interface (#4) 11 months ago
memory_test.go Add Ping to Interface (#4) 11 months ago
utils.go upgrade with macaron 8 years ago

README.md

cache

cache is a middleware that aim to have a transparent interface for a lot of cache implementations.

Use use many cache adapters, including memory, file, Redis, Memcache, PostgreSQL, MySQL, Ledis and Nodb.

Installation

go get gitea.com/go-chi/cache

Getting Help

// Cache is the interface that operates the cache data.
type Cache interface {
	// Put puts value into cache with key and expire time.
	Put(key string, val interface{}, timeout int64) error
	// Get gets cached value by given key.
	Get(key string) interface{}
	// Delete deletes cached value by given key.
	Delete(key string) error
	// Incr increases cached int-type value by given key as a counter.
	Incr(key string) error
	// Decr decreases cached int-type value by given key as a counter.
	Decr(key string) error
	// IsExist returns true if cached value exists.
	IsExist(key string) bool
	// Flush deletes all cached data.
	Flush() error
	// StartAndGC starts GC routine based on config string settings.
	StartAndGC(opt Options) error
	// Ping tests if the cache is alive
	Ping() error
}

Credits

This package is a modified version of go-macaron/cache.

License

This project is under the Apache License, Version 2.0. See the LICENSE file for the full license text.