WEBサービス創造記

WEBサービスを作ったり保守したりしてる人のメモブログです。

Rails.cacheによるキャッシング

      2015/05/31

Rails.cacheの有効化

config/application.rb の Application内、若しくは、config/environments/*.rb (例えばconfig/environments/development.rbなど) の Application.configure ブロック内など適当なところへ以下の一文を追記する。

  config.cache_store = :memory_store

これで、Rails.cacheによってキャッシュをコントロールすることができるようになる。

Rails.cacheの使い方

Rails.cacheの使い方は簡単で、以下の通りである。

Rails.cache.read("hoge")  # => nil(なにも値が設定されていない場合や期限切れの場合はnilが返る
Rails.cache.write("hoge", "hogeの値")
Rails.cache.read("hoge")  # => "hogeの値"

上記のようにwriteでキャッシュを保存し、readで保存してあるキャッシュを読み込むことができる。

また、以下のようにwriteメソッドの第3引数ではキャッシュの有効期限を秒数で指定することができる。

Rails.cache.write("hoge", "hogeの値", :expires_in => 5)

この場合5秒後にキャッシュの期限は切れ、Rails.cache.read(“hoge”)としてもnilが返る。

Rails.cache.write("hoge", "hogeの値", :expires_in => 5)
sleep(5)
Rails.cache.read("hoge")  # => nil

なお、clearメソッドですべてのキャッシュをクリアすることができる。

Rails.cache.clear # すべてのキャッシュをクリア

 - Ruby on Rails , , , ,