Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1528547
  • 博文数量: 164
  • 博客积分: 2993
  • 博客等级: 少校
  • 技术积分: 1718
  • 用 户 组: 普通用户
  • 注册时间: 2011-06-24 11:42
文章分类

全部博文(164)

文章存档

2014年(1)

2013年(36)

2012年(90)

2011年(37)

分类: 系统运维

2012-06-28 09:55:20

Memcache 是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。简单的说就是将数据调用到内存中,然后从内存中读取,从而大大提高读取速度。(选自百度百科)

        Memcache 在PHP 中有面向过程和面向对象两种使用,这里主要讲述面向对象的使用,具体可以参考PHP 手册。

        Memcache 的接口

      面向对象的接口:

        1、Memcache::connect :打开一个Memcache 连接,例如:

 

        $mem=new Memcache;   //实例化一个对象 

    $mem->connect('localhost',11211);  //打开连接,第一个参数为:主机地址,可以是域名、IP地址;第二个参数为:端口 

?> 

        2、Memcache::pconnect:打开一个到Memcache的持久连接,功能和使用同上

        3、Memcache::close:关闭一个Memcache 的连接,释放资源

        4、Memcache::add:向Memcache hash 表中添加一个键和值。有四个参数

        bool Memcache::add ( string key, mixed var [, int flag [, int expire]] )

                1)string key:键名

                2)mixed var:键的值,可以是任意类型(字符串、数字、数组、对象)

                3)int flag:可选参数,一般使用MEMCACHE_COMPRESSED 表示使用压缩的方式

                4)int expire:可选参数,设置时间,以秒为单位

 

$mem->add('mystr','This is a string!',MEMCACHE_COMPRESSED,3600); 

        5、Memcache::set:保存数据到Memcache服务器上,其使用方法和add 类似,不过Memcache::set 可以更改键的值

        6、Memcache::get: 提取一个保存在Memcache服务器上的数据,参数就一个:键名称。例如:要提取Memcache 服务器中 键mystr 的值

 

echo $mem->get('mystr'); 

        7、Memcache::delete:删除Memcache 服务器中的一个键,参数就一个:键名称

 

$mem->delete('mystr'); 

        8、Memcache::flush:删除保存在Memcache 服务器中的所有键值,没有参数

        9、Memcache::getStats:获取当前Memcache 服务器运行的状态,没有参数

       10、Memcache::getVersion:获取当前Memcache 服务器的版本,没有参数

       11、Memcache::replace:替换Memcache 服务器中已经存在的键的值,使用方法和add/set 类似

       12、Memcache::addServer:添加多个Memcache 服务器,使用方法和Memcache::connect 类似

 

        需要说明的是,如果使用两次或多次Memcache::add 对同一键赋值,那么该键的值不会被覆盖,只有使用Memcahe::replace 或Memcache::set 才可以。

阅读(782) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~