并通过memcached协议与守护进程通信。但是它并不提供冗余(例如,复制其hashmap条目);当某个服务器s停止运行或崩溃了,所有存放在s上的键/值对都将丢失。 memcached由danga interactive开发,用于提升livejournal.com访问速度的。lj每秒动态页面访问量几千次,用户700万。memcached将数据库负载大幅度降低,更好的分配资源,更快速访问。
memcache常用方法
memcache::add — 添加一个值,如果已经存在,则返回false 
memcache::addserver — 添加一个可供使用的服务器地址 
memcache::close — 关闭一个memcache对象 
memcache::connect — 创建一个memcache对象 
memcache::debug — 控制调试功能 
memcache::decrement — 对保存的某个key中的值进行减法操作 
memcache::delete — 删除一个key值 
memcache::flush — 清除所有缓存的数据 
memcache::get — 获取一个key值 
memcache::getextendedstats — 获取进程池中所有进程的运行系统统计 
memcache::getserverstatus — 获取运行服务器的参数 
memcache::getstats — 返回服务器的一些运行统计信息 
memcache::getversion — 返回运行的memcache的版本信息 
memcache::increment — 对保存的某个key中的值进行加法操作 
memcache::pconnect — 创建一个memcache的持久连接对象 
memcache::replace — r对一个已有的key进行覆写操作 
memcache::set — 添加一个值,如果已经存在,则覆写 
memcache::setcompressthreshold — 对大于某一大小的数据进行压缩 
memcache::setserverparams — 在运行时修改服务器的参数
memcache方法使用
代码如下:
| 代码如下 | 复制代码 | 
| php教程  $memcache = new memcache; $memcache->connect('127.0.0.1', 11211) or die("连接失败"); $memcache->set('name', '张三'); $val = $memcache->get('name'); ?>  | 
	  |
注:set方法的完整版本,set(键名,键值,是否压缩,保持时间)
代码如下:
| 代码如下 | 复制代码 | 
| 
$memcache = new memcache;  $memcache -> connect('127.0.0.1', 11211) or die("连接失败"); $memcache -> set('name', array('一个','两个')); $val = $memcache->get('name'); print_r($val); $memcache -> close(); ?>  | 
	  |