Newer
Older
Kasper Weibel
committed
# This class implements a cache with simple delegation to the Redis store, but
# when it creates a key/value pair, it also sends an EXPIRE command with a TTL.
# It should be fairly simple to do the same thing with Memcached.
class RedisClient
def initialize(ttl = 86400)
@store = Redis.new
@ttl = ttl
end
def [](url)
@store.[](url)
end
def []=(url, value)
@store.[]=(url, value)
@store.expire(url, @ttl)
end
def keys
@store.keys
end
def del(url)
@store.del(url)
end
end