memcachedのちょっとまとめその1

memcachedの概要をざくっとまとめその1

memcachedについて

URL memcached: a distributed memory object caching system

  • 分散型メモリキャッシュシステム
  • シンプルなプロトコル
  • バージョン1.3からバイナリプロトコルをサポート
  • 従来のテキストプロトコルもサポートされている

memcachedの特徴

  • ファイルI/Oの削減
  • オブジェクトをキャッシュできる
  • 複数のサーバ間でキャッシュ共有が可能
  • クライアントライブラリが用意されている

クライアントライブラリ一覧

言語 クライアントライブラリ名
Perl Cache::Memcached
Cache::Memcached::Fast
Cache::Memcached::libmemcached
Cache::Memcached::XS
PHP Pecl memcache client
C libmemcache
libmemcached
apr_memcache
Java memcached client for java
spymemcached
Ruby Ruby MemCache Client
Python python memcached

memcachedのデメリット

  • 揮発性

まぁーメモリ上に確保しているので消える可能性がある

memcahcedの主な用途

  • SQLクエリ結果のキャッシュ
  • セッションのキャッシュ
  • アプリケーション

memcachedのインストール

【1】必要ライブラリのインストール
イベント通知ライブラリ libevent
libeventについてはココを参考に

【2】memcachedのインストール
インストール方法は他に色々載っているのでそちらを参考に

memcached起動オプション

オプション名 説明 デフォルト値
-p TCP listenポート番号 11211
-U UDP listenポート番号 0,off
-s Unixソケットのパス
-a Unixソケットへのアクセスマスク(8進数) 0700
-l memcachedがlistenするIPアドレス INDRR_ANY
-d デーモンで起動
-r コアファイルのサイズ制限を最大化
-u memcachedを起動するユーザの指定
-m キャッシュで使用するMAX値(MByteで指定) 64
-M メモリ使い果たした時にエラーで返す
-c 最大同時接続数 1024
-k
-v エラーやワーニングを表示
-vv デバッグモード クライアントからのリクエスト・レスポンスを表示
-h ヘルプ表示
-i memcachedとlibeventのライセンス表示
-b       インスタンス管理を実行
-P PIDファイルの保存場所 -dオプション使用時のみ使用可能
-f チャンクサイズの増加係数 1.25
-n key+value+flagsに割り当てる最小のサイズ 48