放假重裝了一下系統,win7 x64的,而我使用的win下的開發環境也升級到了最新版,所集成的是php5.3.13,一切很順利,但是在安裝php的memcache擴展的時候發現官方并未提供(http://downloads.php.net/pierre/),只提供了有限的x86的線程安全與非線程安全兩種,并未提供x64的。經過一翻尋找,安裝成功,再次做下記錄,方便以后查找。
一、安裝memcache的php擴展
1. php_memcache.dll 下載:
下載地址:php_memcache.zip
2. 把php_memcache.dll放到php的ext目錄:
例如:D:\WampServer\bin\php\php5.3.11\ext\php_memcache.dll
3. 打開 php.ini 文件:
我的php.ini的位置:D:\WampServer\bin\php\php5.3.11\php.ini
4. 在 php.ini上增加一行:
extension=php_memcache.dll
5. 重啟Wampserver的apache服務
這樣就安裝好了php的memcache擴展
二、安裝memcached
1. Memcached-win64 下載:
a. 下載最新版:http://blog.couchbase.com/memcached-windows-64-bit-pre-release-available
b. 直接下載: memcached-win64-1.4.4-14.zip
2. 解壓放某個盤下面,比如:
D:\WampServer\bin\memcached\memcached.exe
3. 在終端(也即cmd命令界面)下輸入以下命令安裝windows服務:
D:\WampServer\bin\memcached>memcached.exe -d install
4. 再輸入下面命令啟動:
D:\WampServer\bin\memcached>memcached.exe -d start
這里參數有很多,這里就不介紹了,有興趣的可以自己去查一下
NOTE: 以后memcached將作為windows的一個服務每次開機時自動啟動。這樣服務器端已經安裝完畢了。
另外,很多童鞋連memcache和memcached都分不清楚,這里可以看下我以前的文章
##############################################
memcache和memcached的區別
在自己的新程序中打算全面應用memcached技術,這個很容易理解這是memcached是內存緩存,但是怎么還有memcache呢?
其實很簡單,memcache是php的一個擴展,用于php管理memcached,php-memcache.dll。
如果安裝了memcached不安裝擴展,那么php無法操控memcached,但是命令行使用起來沒有問題
如果安裝了memcache擴展但是沒有安裝memcached服務,那么這個就無法使用
只有同時安裝了memcached服務和memcache擴展才可以在PHP中使用memcached提高動態網站性能
摘自杰少Pakey's BLOG
################################################
測試代碼如下
$memcache = new Memcache;
$memcache->connect("localhost",11211);
echo "Server's version: " . $memcache->getVersion() . "\n";
$tmp_object = new stdClass;
$tmp_object->str_attr = "test";
$tmp_object->int_attr = 123;
$memcache->set("key",$tmp_object,false,10);
echo "Store data in the cache (data will expire in 10 seconds)\n";
echo "Data from the cache:\n";
var_dump($memcache->get("key"));
你可以看到如下結果
---------- PhpUnit ----------
Server's version: 1.4.4-14-g9c660c0
Store data in the cache (data will expire in 10 seconds)
Data from the cache:
object(stdClass)#3 (2) {
["str_attr"]=>
string(4) "test"
["int_attr"]=>
int(123)
}
Output completed (2 sec consumed) - Normal Termination
作者 zdrjlamp