• memcache 入门一

    php 使用memcache 将变量存储到内存中以加快程序运行速度,要使用memcache 需要先安装配置对应的模块,使用memcache不需要像session那样在实现多主机共享时进行负责的控制判断,实时性高效的memcache让分布 式架构处理共享信息更轻松。先看一个官网的实例吧

     
    $memcache = new Memcache;
    $memcache->connect('localhost', 11211) or die ("Could not connect");
     
    $version = $memcache->getVersion();
    echo "Server's version: ".$version."
    \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)
    \n";
     
    $get_result = $memcache->get('key');
    echo "Data from the cache:
    \n";
     
    var_dump($get_result);
     

    可以看到新建一个memcache对象后可以是用 set  get  轻松的设置和获取内存中的变量,

    Memcache面向对象的常用接口包括:
    Memcache::connect — 打开一个到Memcache的连接
    Memcache::pconnect — 打开一个到Memcache的长连接
    Memcache::close — 关闭一个Memcache的连接
    Memcache::set — 保存数据到Memcache服务器上
    Memcache::get — 提取一个保存在Memcache服务器上的数据
    Memcache::replace — 替换一个已经存在Memcache服务器上的项目(功能类似Memcache::set)
    Memcache::delete — 从Memcache服务器上删除一个保存的项目
    Memcache::flush — 刷新所有Memcache服务器上保存的项目(类似于删除所有的保存的项目)
    Memcache::getStats — 获取当前Memcache服务器运行的状态
    Memcache::getVersion   获取当前服务器memcache版本信息
    memcache_debug()  开启或关闭调试
    Memcache 类 相关信息如下

    Memcache {
    bool add ( string $key , mixed $var [, int $flag [, int $expire ]] )
    bool addServer ( string $host [, int $port = 11211 [, bool $persistent [, int $weight [, int $timeout [, int $retry_interval [, bool $status [, callback $failure_callback [, int $timeoutms ]]]]]]]] )
    bool close ( void )
    bool connect ( string $host [, int $port [, int $timeout ]] )
    int decrement ( string $key [, int $value = 1 ] )
    bool delete ( string $key [, int $timeout = 0 ] )
    bool flush ( void )
    string get ( string $key [, int &$flags ] )
    array getExtendedStats ([ string $type [, int $slabid [, int $limit = 100 ]]] )
    int getServerStatus ( string $host [, int $port = 11211 ] )
    array getStats ([ string $type [, int $slabid [, int $limit = 100 ]]] )
    string getVersion ( void )
    int increment ( string $key [, int $value = 1 ] )
    mixed pconnect ( string $host [, int $port [, int $timeout ]] )
    bool replace ( string $key , mixed $var [, int $flag [, int $expire ]] )
    bool set ( string $key , mixed $var [, int $flag [, int $expire ]] )
    bool setCompressThreshold ( int $threshold [, float $min_savings ] )
    bool setServerParams ( string $host [, int $port = 11211 [, int $timeout [, int $retry_interval = false [, bool $status [, callback $failure_callback ]]]]] )

    }


    上面的翻译只罗列了一些常用的方法,需要具体资料的可以参考php官方文档http://cn2.php.net/manual/en/book.memcache.php

click
©2010-2024 Jeen All Rights Reserved.Powered by emlog 京ICP备15058100号-1