cacheinterface/README.md

26 lines
626 B
Markdown
Raw Normal View History

2019-10-02 04:10:27 +00:00
CacheInterface
--------------
An experimental interface to use different caches interchangeably via URIs
Example Cache URIs:
```
redis://server:port?db=0&password=test
memcache://server1:11211,server2:11211
```
Code
####
The CacheInterface interface has all methods. All clients will implement this on a best-effort basis.
```go
type CacheInterface interface {
Has(key string) bool
Get(key string) ([]byte, error)
Set(key string, val interface{}, ttl time.Duration) (err error)
Del(key string) error
}
```
Note: Set will automatically attempt to store byte arrays and strings directly, and encode the rest with JSON.