1. memcached 拡張機能
memcached 1.2. 4 以降では、同じキーに対する複数のプロセスの同時処理の問題に対処するための CAS (Check and Set) プロトコルが追加されています。この状況は、実際にはルート データベースと非常によく似ています。複数のプロセスが同じテーブル内の同じデータを同時に更新すると、競合が発生します (笑)。データベースでは、テーブル全体をロックすることも、テーブル内の行をロックすることもできます。実際、memcached に追加される CAS はほぼ同じです。 PHP の拡張機能 memcache は cas をサポートしていないため、memcached 拡張機能をインストールする必要があります。memcached 拡張機能は libmemcached に基づいているため、最初に libmemcached をインストールする必要があります。?2、memcahced のバージョン情報を確認します
telnet 127.0.0.1 12000stats
次の情報が表示されます
STAT pid 15322
STAT uptime 1885
STAT 時間 1279455772
STAT バージョン 1.2.8
STAT pointer_size 32
バージョンが低すぎる場合は、再インストールを検討してください
ctrl] qを押します。
3. 必要なソフトウェアをインストールします
wgethttp://launchpad.net/libmemcached/1.0/0.42 / download/libmemcached-0.42.tar.gz
wgethttp://pecl.php.net/get/memcached-1.0.2.tgz
memcached の公式 Web サイトhttp://www.memcached.org/
4、libmemcached をインストールします
tar zxvf libmemcached-0.42.tar.gzcd libmemcached-0.42
./configure --prefix=/usr/local/libmemcached? --with-memcached
make && make install
configure: error: "memcached binary が見つかりませんでした"
/home/zhangy/libmemcached-0.42/clients/ms_thread.c:225: `__sync_fetch_and_add_4' への未定義の参照
clients/ms_thread.o:/home/ zhangy/libmemcached -0.42/clients/ms_thread.c:196: `__sync_fetch_and_add_4' への未定義の参照がさらに続きます
collect2: ld は 1 終了ステータスを返しました
make[2]: *** [clients/memslap] エラー 1
make[2]: ディレクトリ `/home/zhangy/libmemcached-0.42' を残します
5. PHP 拡張機能 memcached のインストール
tar zxvf memcached-1.0.2.tar.gzcd memcached-1.0.2
/ usr /local/php/bin/phpize
./configure --enable-memcached --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr / local/libmemcached
./configure --prefix=/usr/local/phpmemcached? --with-memcached
make && make install