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.