Windows下的Memcache安裝與測試教程

晚來風急發表於2017-07-03
1、下載memcache for windows
  下載地址:http://splinedancer.com/memcached-win32/,推薦下載binaries版本,
  解壓(本例中解壓到e:memcached-1.2.4)。
  2、安裝memcache,
  在命令列狀態下輸入: e:/memcached-1.2.4/memcached.exe -d install 。至此memcached已經安裝成windows服務
  3、啟動memcache,
  在命令列下輸入: e:/memcached-1.2.4/memcached.exe -d start 以啟動memcached服務。
  或者也可以選擇在windows服務中啟動
  到此,memcache的伺服器端就準備完畢,接下來需要安裝php的memcache擴充套件,
  php安裝Memcached模組支援
  1、下載php_memcache.dll模組,
  你可以從http://downloads.php.net/pierre/找到對應的版本,
  php5.3對應php_memcache-2.2.6-5.3-vc9-x86.zip
  將php_memcache.dll放到phpext目錄下,
  2、修改php.ini來加入擴充套件,並並重啟apache伺服器
  加入extension=php_memcache.dll、重啟apache伺服器,
  然後檢視一下phpinfo,如果有memcache,那麼就說明安裝成功!
  測試windows下的Memcached
  測試程式碼如下:
<?php
$mem = new Memcache;
$mem->connect(“127.0.0.1”, 11211);
$mem->set(`key`, `Hello Memcached!`, 0, 60);
$val = $mem->get(`key`);
echo $val;
?>
Example #1 memcache extension overview example
In this example, an object is being saved in the cache and then retrieved back. Object and other non-scalar types are serialized before saving, so it`s impossible to store resources (i.e. connection identifiers and others) in the cache.
<?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);
?>
Example #2 Using memcache session handler
<?php
$session_save_path = “tcp://$host:$port?persistent=1&weight=2&timeout=2&retry_interval=10,  ,tcp://$host:$port  “;
ini_set(`session.save_handler`, `memcache`);
ini_set(`session.save_path`, $session_save_path);
?>
memcached的基本設定:
  -p 監聽的埠
  -l 連線的IP地址, 預設是本機
  -d start 啟動memcached服務
  -d restart 重起memcached服務
  -d stop|shutdown 關閉正在執行的memcached服務
  -d install 安裝memcached服務
  -d uninstall 解除安裝memcached服務
  -u 以的身份執行 (僅在以root執行的時候有效)
  -m 最大記憶體使用,單位MB。預設64MB
  -M 記憶體耗盡時返回錯誤,而不是刪除項
  -c 最大同時連線數,預設是1024
  -f 塊大小增長因子,預設是1.25
  -n 最小分配空間,key+value+flags預設是48
  -h 顯示幫助
  介面介紹
  Memcache客戶端包含兩組介面,一組是程式導向的介面,一組是物件導向的介面,具體可以參考PHP手冊 “LXXV. Memcache Functions” 這章。
  Memcache物件導向的常用介面包括:
  Memcache::connect — 開啟一個到Memcache的連線
  Memcache::pconnect — 開啟一個到Memcache的長連線
  Memcache::close — 關閉一個Memcache的連線
  Memcache::set — 儲存資料到Memcache伺服器上
  Memcache::get — 提取一個儲存在Memcache伺服器上的資料
  Memcache::replace — 替換一個已經存在Memcache伺服器上的專案(功能類似Memcache::set)
  Memcache::delete — 從Memcache伺服器上刪除一個儲存的專案
  Memcache::flush — 重新整理所有Memcache伺服器上儲存的專案(類似於刪除所有的儲存的專案)
  Memcache::getStats — 獲取當前Memcache伺服器執行的狀態
  Memcache::addServer — 分散式伺服器新增一個伺服器
最新內容請見作者的GitHub頁:http://qaseven.github.io/


相關文章