Memcache使用基础

Memcached的特点:
    协议简单
    基于libevent的事件处理
    内置内存存储方式
    memcached不互相通信的分布式
 
1.协议简单:
    使用简单的基于文本的协议,因而通过telnet也能在memcached上保存数据、取得数据
2.基于libevent:
    将Linux等操作系统事件处理功能封装成统一的接口,能在Linux、BSD等操作系统上发挥其高性能
3.内置内存存储方式:
    为了提高性能,memcached中保存的数据都存储在memcached内置的存储空间中,如果内容容量达到指定的值以后,就基于LRU(Least Recently Used)算法自动删除不使用的缓存
4.memcached不互相通信的分布式
    memcached服务器端并没有分布式功能。各个memcached不会互相通信以共享信息,分布式完全取决于客户端的实现
 
 
Linux下memcached的安装:
    sudo yum install libevent libevent-deval
    wget http://ip/xxxxx
    tar zxf memcached-version.tar.gz
    cd memcached-version
    ./configure
    make
    sudo make install
 
memcached的启动:
    /usr/local/bin/memcached -p 11211 -m 64m -vv
选项说明:
    选项    说明
    -p        使用TCP端口,默认为11211
    -m        最大内存大小,默认为64m
    -vv        用very vrebose模式启动,调试信息和错误输出到控制台
    -d        作为daemon在后台启动
    -h        帮助

<?php
$memcache = new Memcache;
$memcache->connect('localhost', 11211) or die ("Could not connect");

$version = $memcache->getVersion();
echo "Server's version: ".$version."<br/>\n";

$tmp_object = new stdClass;
$tmp_object->str_attr = 'test';
$tmp_object->int_attr = 123;

$memcache->set('key', $tmp_object, false, 10) or die ("Failed to save data at the server");
echo "Store data in the cache (data will expire in 10 seconds)<br/>\n";

$get_result = $memcache->get('key');
echo "Data from the cache:<br/>\n";

var_dump($get_result);
?> 

  
memcache保存数据的方法有:
    add
    replace
    set
使用方法:
    $add = $memcache->add('键','值','期限');
    $replace = $memcache->replace('键','值','期限');
    $set = $memcache->set('键','值','期限');
  memcache获取数据的方法:
        get
    使用方法:
    $getResult = $memcache->get('键');
    var_dump($getResult);

posted @ 2012-03-29 15:18  浮云比翼  阅读(530)  评论(0编辑  收藏  举报