RailsとDalliでMemcached体験

こんばんわ。

「〜NoSQL(KVS)大集合~」とかそれっぽい勉強会に参加して
概要とかダメなトコとかイケてるトコなんとなく知ってたんですが
食わず嫌いしてました。


入れてみたらとっても快適だった。
導入もすぐだったのでメモ。

Macに入れる

brew install memcached


GemfileにDalliを入れる

gem 'dalli'

// memcachedとかmemcache-clientって選択肢あったけど
// Herokuがオススメしてるのでこれに。


config/environments/の使う環境に以下を記述

config.cache_store = :dalli_store


ここで細かい設定も可能

config.cache_store = :dalli_store, 'cache-1.example.com', 'cache-2.example.com',
  { :namespace => NAME_OF_RAILS_APP, :expires_in => 1.day, :compress => true }


あとはmemcached起動したら使えちゃう

Rails.cache.write 'hoge', 'fuga' 
# => true
Rails.cache.read 'hoge' 
# => "fuga"
Rails.cache.delete 'hoge'
# => true
Rails.cache.read 'hoge'
# => nil


これだけ!
便利だー

KVSは得意不得意あるってのは以下のLT聞いて雰囲気分かったので、
実際の運用で炎上しないように気をつけまーす。

NoSQLをRDBの代わりに使うと、どういう恐ろしいことが起こるか。PARTAKEの作者が語る


おしまい。