All Projects → basecamp → Libmemcached_store

basecamp / Libmemcached_store

Licence: mit
ActiveSupport::Cache wrapper for libmemcached

Programming Languages

ruby
36898 projects - #4 most used programming language

= 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:

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 config.cache_store option to :libmemcached_store 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)

== Props

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

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].