Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
MemCachier Rails Usage Example
Ruby HTML JavaScript CSS
Branch: master

Merge pull request #1 from friism/add-db-to-app-json

add database so that first deploy doesn't fail
latest commit 7c5dfc1e03
@alevy alevy authored

README.md

MemCachier Rails Example App

This is an example Rails app that uses MemCachier to GIS lookups. This example is written with Rails 3.2.

You can view a working version of this app here. Running this app on your local machine in development will work as well, although then you won't be using MemCachier -- you'll be using a local dummy cache. MemCachier is currently only available with various cloud providers.

Deploy to Heroku

You can deploy this app yourself to Heroku to play with.

Deploy

Setup MemCachier

Setting up MemCachier to work in Rails is very easy. You need to make changes to Gemfile, production.rb, and any app code that you want cached. These changes are covered in detail below.

Gemfile

MemCachier has been tested with the dalli memcache client. Add the following Gem to your Gemfile:

gem 'memcachier'
gem 'dalli'

Then run bundle install as usual.

Note that the memcachier gem simply sets the appropriate environment variables for Dalli. You can also do this manually in your production.rb file if you prefer:

ENV["MEMCACHE_SERVERS"] = ENV["MEMCACHIER_SERVERS"]
ENV["MEMCACHE_USERNAME"] = ENV["MEMCACHIER_USERNAME"]
ENV["MEMCACHE_PASSWORD"] = ENV["MEMCACHIER_PASSWORD"]

Alternatively, you can pass these options to config.cache_store (also in production.rb):

config.cache_store = :dalli_store, ENV["MEMCACHIER_SERVERS"].split(','),
                    {:username => ENV["MEMCACHIER_USERNAME"],
                     :password => ENV["MEMCACHIER_PASSWORD"]}

production.rb

Ensure that the following configuration option is set in production.rb:

config.cache_store = :dalli_store

Using MemCachier

In your application, use Rails.cache methods to access MemCachier. A list of methods is available here. All the built-in Rails caching tools will work, too.

Take a look at app/controllers/home_controller.rb in this repository for an example.

Get involved!

We are happy to receive bug reports, fixes, documentation enhancements, and other improvements.

Please report bugs via the github issue tracker.

Master git repository:

  • git clone git://github.com/memcachier/examples-rails.git

Licensing

This library is BSD-licensed.

Something went wrong with that request. Please try again.