【Memcached導入に関するメモ】2012/07/11(水)~
■memcached導入
memcached導入方法
1
|
|
memcachedインストール時にlibevent-1.4-2(非同期イベント通知ライブラリ)もインストールされる模様
memcached起動方法
1
|
|
memcachedの主なオプション
・-m <キャッシュメモリ容量> デフォルトは64(単位はMB)
・-l <待ち受けネットワークインタフェース> デフォルトはINDRR_ANY
・-p ポート番号、規定値は11211
・-u <デーモン実行ユーザ> rootでデーモンを起動する際にデーモン実行ユーザを指定する
例) キャッシュ = 1GB、接続許可ホスト = ローカルホスト
1
|
|
memcachedデーモンの起動を確認 $ ps aux | grep “memcached”
1 2 |
|
memcached動作確認
まずtelnetにてmemcachedへ接続
1
|
|
memcachedへ接続後、statsコマンド他で動作確認を行う 動作確認後、quitコマンドで接続を切断する
その他:memcachedのバージョンとヘルプを表示
1
|
|
値の格納と取得
setコマンドとgetコマンドにて値の格納と取得を行う まずsetコマンドは以下のフォーマットで指定する
<コマンド> <キー> <圧縮フラグ(1 or 0)> <有効期間(単位:秒)> <サイズ(単位:Bytes)>
例) 「foo」というキーに「123」という3バイトのデータを非圧縮(0)/無期限(0)で格納する。またそれを取り出す。
1 2 3 4 5 6 7 8 9 10 11 12 |
|
その他の操作
stats items :キャシュされているレコード情報を取得
stats cachedump :キャッシュ内容ダンプ
例)
1 2 3 4 5 6 7 8 9 10 11 12 |
|
memcached終了方法
1
|
|
■dalli(memcachedクライアント)導入
dalli導入方法
Gemfileに「gem ‘dalli’」と一行追加し、bundle installを行う
■キャッシュストアに設定する方法
例としてproduction環境で使用する場合は、config/environments/production.rb に次の行を追加する
1
|
|
■セッションストアに設定する方法
config/initializers/session_store.rb に以下の行を追加
例)以下はセッション情報を二週間保持する例
注)Rails3のデフォルト設定では、ブラウザからのアクセスが切断された時点でセッションも破棄される
1 2 3 |
|
■Railsコンソール上でのキャッシュ内容確認
キャッシュ設定内容確認
例)
1 2 |
|
Railsコンソール上でのsession_optionsの確認
例)
1 2 |
|
値の格納と取得
例)
1 2 3 4 5 6 |
|
以上
参考サイト:
memcached導入手順
memcachedコマンド一覧
memcachedでキー一覧を取得したい時に
memcachedでパフォーマンス向上
Rails3からmemcachedを利用する
memcachedプロトコルCAS操作について
HerokuでMemcacheを使うには
Ruby on Rails 3.1 でセッションを memcached に保存する
Rails 3.2 で Dalli を Session Store として利用する際の session_options の罠
Rails3.x系でログイン状態を保持する方法
rails 3でmemcachedを利用する
Rails3系でセッション有効期限の設定
railsのクッキーとセッションについてまとめ
その他:
各種サーバ構成の速度ベンチマーク