Provides centralized management of Redis connection strings.
Switch branches/tags
Nothing to show
Pull request Compare This branch is even with wiecklabs:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib
test
.gitignore
.rbenv-version
Gemfile
MIT-LICENSE
README
Rakefile
TODO
redis_directory.gemspec

README

= Redis::Directory

Redis::Directory assumes a Redis installation running on a default
port and database 0 that will contain connection information for various
other Redis databases. For example, if you were using a Redis database to
store the content of cached pages, and this was running on a cluster of
two Redis instances, with multiple applications connecting partitioned by
database, then your connection might look like this:

  require "redis"
  require "redis/distributed"

  # The ACME Corp database is #27
  cache = Redis::Distributed.new %w( redis://redis.example:4400/27 redis://redis.example:4401/27 )

Redis::Directory uses a centralized Redis database to store the
connection information so you don't have to remember "magic numbers" for
each client/database mapping, and can easily update port-numbers, hostnames
and cluster-members as necessary. The same connection with
Redis::Directory would look like this:

  require "redis_directory"
  
  cache = Redis::Directory.new("redis.example").get("cache", "acme")