jekeyhui99 发表于 2017-12-15 16:17:42

win2008R2下64位系统memcache/memcached安装教程

memcache和memcached的区别
在自己的新程序中打算全面应用memcached技术,这个很容易理解这是memcached是内存缓存,但是怎么还有memcache呢?
其实很简单,memcache是php的一个扩展,用于php管理memcached,php-memcache.dll。
如果安装了memcached不安装扩展,那么php无法操控memcached,但是命令行使用起来没有问题
如果安装了memcache扩展但是没有安装memcached服务,那么这个就无法使用
只有同时安装了memcached服务和memcache扩展才可以在PHP中使用memcached提高动态网站性能
一、安装memcache的php扩展1. php_memcache.dll 下载:
下载地址:php_memcache.zip http://www.2cto.com/uploadfile/2012/0713/20120713110240777.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服务
二、安装memcached
1. Memcached-win64 下载:

a. 下载最新版:http://blog.couchbase.com/memcac ... e-release-available

b. 直接下载: memcached-win64-1.4.4-14.zip

http://www.2cto.com/uploadfile/2012/0713/20120713110308123.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


OK~~大功告成
打开phpinfo()页面:
http://img.blog.csdn.net/20130619142821609

      =========== 代码测试 =============
01      $memcache = new Memcache;
02      $memcache->connect("localhost",11211); # You might need to set "localhost" to "127.0.0.1"
03      
04      echo "Server's version: " . $memcache->getVersion() . "\n";
05      
06      $tmp_object = new stdClass;
07      $tmp_object->str_attr = "test";
08      $tmp_object->int_attr = 123;
09      
10      $memcache->set("key",$tmp_object,false,10);
11      echo "Store data in the cache (data will expire in 10 seconds)\n";
12      
13      echo "Data from the cache:\n";
14      var_dump($memcache->get("key"));


      结果:


01      ---------- PhpUnit ----------
02      Server's version: 1.4.4-14-g9c660c0
03      Store data in the cache (data will expire in 10 seconds)
04      Data from the cache:
05      object(stdClass)#3 (2) {
06          ["str_attr"]=>
07          string(4) "test"
08          ["int_attr"]=>
09          int(123)
10      }
11      
12      Output completed (2 sec consumed) - Normal Termination



http://blog.csdn.net/wusuopubupt/article/details/9128431



jekeyhui99 发表于 2017-12-15 16:34:06

一、Memcached和Memcache的区别:    网上关于Memcached和Memcache的区别的理解众说纷纭,我个人的理解是:Memcached是一个内存缓存系统,而Memcache是php的一个扩展,是php用于操作和管理Memcached的工具。如果安装了Memcached但没有安装Memcache,php无法操控Memcached,但是可以使用命令行来操控Memcached;如果安装了Memcache却没安装Memcached,则无法使用。只有同时安装了Memcached和Memcache,才能在PHP中使用Memcached。    以上仅代表个人观点。    网上关于Memcached和Memcache的安装教程有很多,下面是我参考网上教程并动手操作后总结出来的方法,注意,我的操作是基于64位win7系统的。
二、安装memcached:1. 下载地址:http://pan.baidu.com/s/1gdKbp8R(这是在网上找的下载地址,我试过,可以下载)2. 解压下载后的文件,把它放到一个目录中,如D:\memcached。3. 打开cmd,进入memcached解压后存放的目录,运行命令:   memcached.exe -d install   如果没有意外的话已经安装成功了。   (目录中应该有memcached.exe这个文件)4. 测试是否安装成功:   打开cmd,进入memcached解压后存放的目录,运行命令:   memcached -h,若安装成功,会出现如下界面:http://images2015.cnblogs.com/blog/747151/201509/747151-20150908232409528-2141715343.png
5. 启动memcached:打开cmd,进入memcached解压后存放的目录,运行命令:memcached.exe -d start这时memcached已经启动,在任务管理器中可以看到这个进程: http://images2015.cnblogs.com/blog/747151/201509/747151-20150908232442950-818161676.png
6. 连接Memcached:打开cmd,运行命令:telnet 127.0.0.1 11211即可连接Memcached。
注:win7中可能会出现“telnet’不是内部或外部命令”的错误,这是因为系统中默认没有安装telnet的缘故,可在“控制面板”->“程序”->“程序和功能”->“打开或关闭Windows功能”中打开“Telnet客户端”。
三、安装memcache的php扩展:1. 下载地址:http://windows.php.net/downloads/pecl/releases/memcache/3.0.8/(注意:要下载对应php版本和系统位数的dll文件)2. 把php_memcache.dll放到php的ext目录下,如:   D:\wamp\bin\php\php5.5.12\ext3. 打开php.ini,在extension处添加一行代码:   extension=php_memcache.dll4. 重启服务器。5. 查看php的extensions服务,php_memcache现在应该可以使用了,即处于打钩状态,之前是处于叹号状态的,若还处于叹号状态,用鼠标在上面点击一下就好了。6. 通过代码测试php是否已经可以使用memcached:$memcache = new Memcache;$memcache->connect("127.0.0.1",11211);echo "Memcached's version: " . $memcache->getVersion() . "<br />";$data = array(         'url' => "http://www.cnblogs.com/wujuntian/",         'name' => "编程人,在天涯");$memcache -> set("info",$data,0,10);$info = $memcache->get("info");echo '<pre>';print_r($info);
若能打印出memcache中的信息,则说明php的memcache扩展已安装成功且能使用了!
注意:运行代码时若出现错误Fatal error: Class 'Memcache' not found,有可能是下载的       php_memcache.dll文件与php版本不符,或者与系统位数不符。      我的是64位系统,php版本是5.5.12,下载的是php_memcache-3.0.8-5.5-ts-vc11-x64.zip      这个文件。
页: [1]
查看完整版本: win2008R2下64位系统memcache/memcached安装教程