标签:
基本的memecached客户端命令
5个常用的命令:
1.-stats:当前所有memcached服务器运行的状态信息
2.-add: 添加一个数据到服务器、
3.-set:替换一个已经存在的数据,如果数据不存在,则和add命令相同.
4.-get: 从服务器端提取指定的数据.
5.-delete: 删除指定的单个数据,如果要清除所有数据,可以使用 flush_all指令
Memcache的协议的错误部分主要是三个错误提示值提示指令:
-ERROR -- 普通错误信息,比如指令错误之类
-CLIENT_ERROR<错误信息>--客户端错误
-SERVER_ERROR<错误信息>--服务器端错误
memcache和memcached:
对于内存缓存,比较常用的有两种memcahe和memcached扩展。而mamcached和mamcache的
守护进程memcached同名,比较容易引起混淆,甚至提到memcached,有些人第一想到的是后台
守护进程,这里还是有必要分析一下两者之间的区别.
memcache是完全在PHP框架内开发的
memcached是使用libmemcached的
从手册上看,memcached会比memcache都几个方法,使用方式上都差不多.
memcache是原生实现的,但是使用libmemcached的memcache只支持OO接口,而memcache则是00
和非OO两套接口并存,以后随着memcache服务器段的改进,这个lib也必定会马上跟进的。
而memcache却不一定能做到按时跟进
memcached,还有非常称赞的地方,就是flag不是在操作的时候设置了.而是有一个统一的
setOption()。memcached实现了更多的memcached协议(毕竟是基于libmemcached库的)。
例子:
class Test{
public $a = 1;
public $b = 2;
public $c = 3;
}
//创建memcache对象
$mem = new Memcache;
//连接memcache服务器
$mem -> connect(‘localhost‘,11211);
//添加一个数据
$mem -> add(‘one‘,‘this is memcache test‘,MEMCACHE_COMPRESSED,1000);
$mem -> add(‘two‘,array(‘111‘,‘222‘,‘333‘),MEMCACHE_COMPRESSED,0);
$mem -> add(‘three‘,new Test(),MEMCACHE_COMPRESSED,0);
$mem -> add(‘four‘,100,MEMCACHE_COMPRESSED,0);
//修改一个数据
$mem -> set(‘one‘,‘this is a new test‘,MEMCACHE_COMPRESSED,0);
$mem -> replace(‘two‘,array(‘aaa‘,‘bbb‘,‘ccc‘),MEMCACHE_COMPRESSED,0);
//获取一个数据
var_dump($mem->get(‘one‘));
echo "<br />";
var_dump($mem->get(‘two‘));
echo "<br />";
var_dump($mem->get(‘three‘));
echo "<br />";
var_dump($mem->get(‘four‘));
echo "<br />";
//一次取多个
var_dump($mem->get(array(‘one‘,‘two‘)));
//删除一个数据
$mem -> delete(‘one‘);
$mem -> delete(‘two‘,10); //10秒内删除
//清除所有数据
$mem -> flush();
//关闭memcache连接
$mem -> close();
标签:
原文地址:http://www.cnblogs.com/siichen/p/4746008.html