MacOS X users should use Homebrew to install Redis:
brew install redis
Download and install Redis from http://code.google.com/p/redis/
wget http://redis.googlecode.com/files/redis-2.0.0.tar.gz
tar -zxf redis-2.0.0.tar.gz
mv redis-2.0.0 redis
cd redis
make
Assuming you're using RVM or on Windows, install the gem with:
gem install redis-store
You can specify the Redis configuration details using a URI or a hash. By default the gem will attempt to connect to localhost
port 6379
and the db 0
.
For example
"redis://:secret@192.168.1.100:23682/13/theplaylist"
Made up of the following:
host: 192.168.1.100
port: 23682
db: 13
namespace: theplaylist
password: secret
If you want to specify the namespace
option, you have to pass the db
param too.
{ :host => 192.168.1.100, :port => 23682, :db => 13, :namespace => "theplaylist", :password => "secret" }
Provides a cache store for your Ruby web framework of choice.
config.gem "redis-store"
config.cache_store = :redis_store
# Gemfile
gem "redis-store"
# in your configuration
config.gem "redis-store"
config.cache_store = :redis_store, { ... optional configuration ... }
# Gemfile
gem 'redis'
gem 'redis-store', '1.0.0.rc1'
# config/environments/production.rb
config.cache_store = :redis_store, { ... optional configuration ... }
For advanced configurations scenarios please visit the wiki.
dependency "redis-store", "1.0.0.rc1"
dependency("merb-cache", merb_gems_version) do
Merb::Cache.setup do
register(:redis, Merb::Cache::RedisStore, :servers => ["127.0.0.1:6379"])
end
end
require "sinatra"
require "redis-store"
class MyApp < Sinatra::Base
register Sinatra::Cache
get "/hi" do
settings.cache.fetch("greet") { "Hello, World!" }
end
end
Keep in mind that the above fetch will return "OK" on success, not the return of the block.
For advanced configurations scenarios please visit the wiki.
Provides a Redis store for Rack::Session. See http://rack.rubyforge.org/doc/Rack/Session.html
require "rack"
require "redis-store"
require "application"
use Rack::Session::Redis
run Application.new
# config/environment.rb
config.gem "redis-store"
# then configure as following:
# config/environments/*.rb
config.cache_store = :redis_store
# or
# config/initializers/session_store.rb
ActionController::Base.session = {
:key => APPLICATION['session_key'],
:secret => APPLICATION['session_secret'],
:key_prefix => Rails.env
}
ActionController::Base.session_store = :redis_session_store
# Gemfile
gem "redis-store"
# then configure as following:
# config/environments/*.rb
config.cache_store = :redis_store
# or
# config/initializers/session_store.rb
ActionController::Base.session = {
:key => APPLICATION['session_key'],
:secret => APPLICATION['session_secret'],
:key_prefix => Rails.env
}
ActionController::Base.session_store = :redis_session_store
# Gemfile
gem 'rails', '3.0.3'
gem 'redis'
gem 'redis-store', '1.0.0.rc1'
# config/initializers/session_store.rb
MyApp::Application.config.session_store :redis_session_store
For advanced configurations scenarios please visit the wiki.
dependency "redis-store", "1.0.0.rc1"
Merb::Config.use do |c|
c[:session_store] = "redis"
end
Merb::BootLoader.before_app_loads do
Merb::SessionContainer.subclasses << "Merb::RedisSession"
end
require "sinatra"
require "redis-store"
class MyApp < Sinatra::Base
use Rack::Session::Redis, :redis_server => 'redis://127.0.0.1:6379/0' # Redis server on localhost port 6379, database 0
get "/" do
session[:visited_at] = DateTime.now.to_s # This is stored in Redis
"Hello, visitor."
end
end
For advanced configurations scenarios please visit the wiki.
Provides a Redis store for HTTP caching. See http://github.com/rtomayko/rack-cache
require "rack"
require "rack/cache"
require "redis-store"
require "application"
use Rack::Cache,
:metastore => 'redis://localhost:6379/0/metastore',
:entitystore => 'redis://localhost:6380/0/entitystore'
run Application.new
require "i18n"
require "redis-store"
I18n.backend = I18n::Backend::Redis.new
The backend accepts the uri string and hash options.
Use Rails.cache.reconnect
in your Unicorn hooks, in order to force the client reconnection.
gem install jeweler bundler
git clone git://github.com/jodosha/redis-store.git
cd redis-store
bundle install
REDIS_STORE_ENV=rails3 bundle install # to install Rails 3 gems
rake dtach:install
rake redis:install
rake
REDIS_STORE_ENV=rails3 rake # to test against Rails 3
If you are on Snow Leopard you have to run env ARCHFLAGS="-arch x86_64" bundle install
(c) 2009 - 2010 Luca Guidi - http://lucaguidi.com, released under the MIT license