Memcached
関連記事
Memcached (発音: mem-cashed, mem-cash-dee) は、汎用の分散型メモリキャッシングシステムです。データやオブジェクトを RAM にキャッシュし、動的なデータベース駆動型 Web サイトの高速化によく利用され、外部データソース(データベースや API など)の読み込み回数を減らします。
システムはクライアントサーバーアーキテクチャを使用します。サーバーは、キーバリュー連想配列を保持します。クライアントはこの配列にデータを入力し、キーで検索します。キーの長さは最大 250 バイトで、値(バリュー)のサイズは最大 1 メガバイトです。
クライアントは、クライアントサイドのライブラリを使用して、デフォルトでは 11211 番ポートで、サービスを公開するサーバーに接続します。TCP と UDP の両方がサポートされています。各クライアントはすべてのサーバを把握しており、サーバ同士は通信しません。クライアントがあるキーに対応する値を設定したり読み出したりしたい場合、クライアントのライブラリはまずそのキーのハッシュを計算し、どのサーバを使うべきかを決定する。これにより、単純なシャーディングと、サーバ間でスケーラブルなシェアード・ナッシング・アーキテクチャが実現されます。
インストール
設定
1.5.6 以降、memcached はデフォルトで TCP でのみリッスンします。-l
を使用すると、特定のインターフェースまたは IP アドレスにバインドできます。デフォルトでは、memcachedはローカルネットワークインターフェースでのみ接続をリッスンしますが、-l
オプションを変更して、外部アドレスをリッスンできるようにすることをお勧めします。memcached(1) を参照してください。
memcached.service
を編集して、パラメータを変更します。
クライアント側ソフトウェア
- C/C++: libmemcached-awesome
- Python: python-binary-memcached, python-memcached, python-pylibmc
- Perl: perl-cache-memcached
- Gambas: gambas3-gb-memcached