PHP之Memcache缓存详解

 

  
Mem:memory缩写(内存):内存缓存

 图片 1

1、  断电或再一次开服务器内存数据就没有,即临时数据;

Memcache默认端口:11211

存入形式:key=>>value    lengh(长度)   time(过期工夫)

顾:不只是字符串,视频,声音,图片,文字等等都得抱;

对比:

Apache –消耗Cpu,用底内存很少

Memcache-消耗内存相比较多,CPU消耗相比少 

 

Memcache的安装

要设置了memcached不装扩充,那么php不可以操控memcached,但是令下用起来没问题,假设安了memcache扩大可是没设置memcached服务,那么是就不能利用
,唯有以安装了memcached服务及memcache扩张才可当PHP中使memcached提升动态网站性能

windows 安装memcached

1、安装增添:下载后解压(链接:http://pan.baidu.com/s/1gdWDjMz
密码:6isi)

  采纳适宜的版,把php_memcache.dll放到php的ext目录子下,在php.ini中添加一行代码:extension=php_memcache.dll。重开服务

2、安装服务:下载地址: http://www.2cto.com/uploadfile/2012/0713/20120713110308123.zip

   
将生充斥好之文件解压到某个文件夹下,打开cmd命令行,进入memcached目录,执行memcached
-d install命令,安装服务。

     尽管当一直不设置了之情况下,出现”failed to install service or service
already installed”错误,可能是cmd.exe需要由此管理员身份运行。

    图片 2

3、启动服务,执行memcached -d start

4、参数介绍

     -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   命令行:telnet 127.0.0.1 11211

<?php

Echo phpinfo();

?>

 图片 3

实例:

<?php

$mem = new Memcache;

$mem->connect(“127.0.0.1”, 12000);

//Memcache::set方法有四独参数,第一独参数是key,第二个参数是value,第三单参数可摘,表示是否减弱保存,第两只参数可卜,用来安一个过自动销毁的光阴。

$mem->set(‘test’,’123′,0,60);

//Memcache::add方法的效能及Memcache::set方法类似,区别是一旦
Memcache::add方法的重回值为false,表示那一个key已经在,而Memcache::set方法则会直接覆写。

$mem->add(‘test’,’123′,0,60);

//Memcache::get方法的意向是得到一个key值,Memcache::get方法来一个参数,表示key。

$mem->get(‘test’);//输出为’123′

//Memcache::replace
方法的来意是指向一个已部分key举行覆写操作,Memcache::replace方法有多少个参数,效能和Memcache::set方法的同样。

$mem->replace(‘test’,’456′,0,60);

//Memcache::delete方法的用意是去除一个key值,Memcache::delete方法暴发少数只参数,第一只参数表示key,第二独参数可卜,表示去延迟的时间。

$mem->delete(‘test’,60);

?>

 

对内存缓存,相比较常用的生些许种植memcache和memcached扩张,而memcache和memcached的医护进程mencached同名,容易混淆视听

a、Memcache是全然在PHP框架内出的

b、Memcached是使用libmemcached的

c、Memcached会比memcache多几乎单章程,使用办法上都差不多

d、memcache是原生实现的,匡助OO和非OO两拟接口并存,而memcached是动libmemcached,只帮助OO接口。更多关于她们之区别,请参考:http://hi.baidu.com/dong\_love\_yan/blog/item/afbe1e12d22e7512203f2e21.html

memcached
,还起只值得赞美的地点,就是flag不用再操作的服饰了,可以经过一个联合之setOption()方法实现;

 

相关文章