No commit activity in last 3 years
No release in over 3 years
An ActiveSupport cache store that uses the C-based libmemcached client through Evan Weaver's Ruby/SWIG wrapper, memcached. libmemcached is fast, lightweight, and supports consistent hashing, non-blocking IO, and graceful server failover.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies

Runtime

 Project Readme
= LibmemcachedStore

An ActiveSupport cache store that uses the C-based libmemcached client through
Evan Weaver's Ruby/SWIG wrapper, memcached. libmemcached is fast, lightweight,
and supports consistent hashing, non-blocking IO, and graceful server failover.

== Prerequisites

You'll need both the libmemcached client and the memcached gem:

* http://tangent.org/552/libmemcached.html
* http://blog.evanweaver.com/files/doc/fauna/memcached

Make sure you install libmemcached first, before you try installing the gem. If
you're using OS X, the easiest way to install libmemcached is through MacPorts:

  sudo port install libmemcached

For other platforms, download and extract the libmemcached tarball and install
manually:

  ./configure
  make && sudo make install

Once libmemcached is installed, install the memcached gem:

  gem install memcached --no-rdoc --no-ri

== Usage

This is a drop-in replacement for the memcache store that ships with Rails. To
enable, set the <tt>config.cache_store</tt> option to <tt>:libmemcached_store</tt>
in the config for your environment

  config.cache_store = :libmemcached_store

If no servers are specified, localhost is assumed. You can specify a list of
server addresses, either as hostnames or IP addresses, with or without a port
designation. If no port is given, 11211 is assumed:

  config.cache_store = :libmemcached_store, %w(cache-01 cache-02 127.0.0.1:11212)

You can also use <tt>:libmemcached_store</tt> with <tt>config.session_store</tt>

  config.session_store = :libmemcached_store

== Props

Thanks to Brian Aker (http://tangent.org) for creating libmemcached, and Evan
Weaver (http://blog.evanweaver.com) for the Ruby wrapper.