Php/memcachedメモ
提供: 初心者エンジニアの簡易メモ
目次
memcachedダウンロード
http://jehiah.cz/projects/memcached-win32/ からバイナリをダウンロード
memcachedのサービス登録
cd D:\memcached-1.2.1-win32 memcached.exe -d install
memcachedのサービス削除
memcached.exe -d uninstall
memcachedのサービス実行
memcached.exe -d start
memcachedスタートバッチ(以下をmemcached_start.batで保存
d: cd D:\memcached-1.2.1-win32 memcached.exe -d start
phpにmemcache導入
php.iniで以下追加
extension=php_memcache.dll
memcacheの.dllを以下からダウンロードし
http://museum.php.net/php5/pecl-5.2.6-Win32.zip D:\php-5.2.6\extへ入れapache再起動。
http://shikii.net/blog/downloads/php_memcache-cvs-20090703-5.3-VC6-x86.zip (php5.3時
memcacheサンプル
<?php
$memcache = new Memcache;
$memcache->connect('localhost', 11211) or die ("Could not connect");
$version = $memcache->getVersion();
echo "Server's version: ".$version."<br/>\n";
$tmp_object = new stdClass;
$tmp_object->str_attr = 'test';
$tmp_object->int_attr = 123;
$memcache->set('key', $tmp_object, false, 10) or die ("Failed to save data at the server");
echo "Store data in the cache (data will expire in 10 seconds)<br/>\n";
$get_result = $memcache->get('key');
echo "Data from the cache:<br/>\n";
var_dump($get_result);
?>
memcachedサンプル
$mc = new Memcached();
$mc->addServer("localhost", 11211);
$mc->set("foo", "Hello!");
$mc->set("bar", "Memcached...");
$arr = array(
$mc->get("foo"),
$mc->get("bar")
);
var_dump($arr);
sessionをmemcacheで使用
以下コードのみ設定し、普通にsessionを使えば、すぐ使える
ini_set('session.save_handler', 'memcache'); //これはmemcachedでなくmemcacheの方を使っている。
ini_set('session.save_path', 'tcp://localhost:11211');
memcacheをmemcachedで仕様
ini_set('session.save_handler', 'memcached'); //これはmemcacheでなくmemcachedの方を使っている。
ini_set('session.save_path', 'localhost:11211'); //こちらはtcp://がない
php8対応
ini_set('session.save_handler', 'memcached'); ini_set('session.save_path', "localhost:11211?persistent=1&weight=1&timeout=1&retry_interval=15");
memcache管理ツール
http://livebookmark.net/memcachephp/memcachephp.zip
