Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Namespaced Rack::Session, Rack::Cache, I18n and cache Redis stores for Ruby web frameworks
Ruby

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib
spec
tasks
.gitignore
Gemfile
Gemfile.lock
MIT-LICENSE
README.md
Rakefile
VERSION
redis-store.gemspec

README.md

Rack::Session, Rack::Cache and cache Redis stores for Ruby web frameworks

Installation

Download and install Redis from http://code.google.com/p/redis/

curl -OL http://redis.googlecode.com/files/redis-1.2.5.tar.gz
tar -zxvf redis-1.2.5.tar.gz
mv redis-1.2.5 redis
cd redis
make

Install the gems

sudo gem install redis redis-store

Cache store

Provides a cache store for your Ruby web framework of choice.

Rails

config.gem "redis-store", :source => "http://gemcutter.org", :lib => "redis-store"
require "redis-store"
config.cache_store = :redis_store

Merb

dependency "redis-store", "0.3.9"
dependency("merb-cache", merb_gems_version) do
  Merb::Cache.setup do
    register(:redis, Merb::Cache::RedisStore, :servers => ["127.0.0.1:6379"])
  end
end

Sinatra

require "sinatra"
require "redis-store"
class MyApp < Sinatra::Base
  register Sinatra::Cache
  get "/hi" do
    cache.fetch("greet") { "Hello, World!" }
  end
end

Rack::Session

Provides a Redis store for Rack::Session. See http://rack.rubyforge.org/doc/Rack/Session.html

Rack application

require "rack"
require "redis-store"
require "application"
use Rack::Session::Redis
run Application.new

Rails

config.gem "redis-store"
ActionController::Base.session_store = :redis_session_store

Merb

dependency "redis-store", "0.3.9"
Merb::Config.use do |c|
  c[:session_store] = "redis"
end
Merb::BootLoader.before_app_loads do
  Merb::SessionContainer.subclasses << "Merb::RedisSession"
end

Sinatra

require "sinatra"
require "redis-store"

class MyApp < Sinatra::Base
  use Rack::Session::Redis

  get "/" do
    session[:visited_at] = DateTime.now.to_s # This is stored in Redis
    "Hello, visitor."
  end
end

Rack::Cache

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',
  :entitystore => 'redis://localhost:6380/1'
run Application.new

Running specs

gem install jeweler bundler
git clone git://github.com/jodosha/redis-store.git
cd redis-store
bundle install
rake dtach:install
rake redis:install
rake

If you are on Snow Leopard you have to run env ARCHFLAGS="-arch x86_64" bundle install

Copyright

(c) 2010 Luca Guidi - http://lucaguidi.com, released under the MIT license

Something went wrong with that request. Please try again.