您好,欢迎访问一九零五行业门户网

PHP模块memcached使用指南_PHP

1.添加扩展包
php_memcache.dll
2.在php.ini添加
extension=php_memcache.dll
3.程序
代码如下:
//创建一个mem对象实例
    $mem=new memcache;
    if(!$mem->connect(10.18.110.213,11211)){
        die('连接失败!');
    }
    //增加
    //1.增加一个字串
/*    if($mem->set('key1',beijing,memcache_compressed,60)){
        echo '添加ok';
    }*/
    //2.添加数值
/*    if($mem->set('key1',100,memcache_compressed,60)){
        echo '添加ok';
    }*/
    //3.添加数组
    //在添加数组是,根据需要. 希望序列号放入  ,
    //serializeunserialize, 如果根据需要,也可以json_encode json_decode
    $arr=array(bj,'tj');
    if($mem->set('key1',$arr,memcache_compressed,time()+31*3600*24)){
        echo '添加数组ok99111';
    }
    //4.添加对象
/*    class dog{
        public $name;
        public $age;
        public function __construct($name,$age){
            $this->name=$name;
            $this->age=$age;
        }
    }
    $dog1=new dog('小狗',50);
    if($mem->set('key1',$dog1,memcache_compressed,60)){
        echo '添加对象ok';
    }*/
    //5.添加null 布尔值
/*    if($mem->set('key1',false,memcache_compressed,60)){
        echo '添加布尔ok';
    }*/
    //6. 资源类型放入.
/*    $con=mysql_connect(127.0.0.1,root,root);
    if(!$con){
        die('连接数据库失败');
    }
    var_dump($con);
    echo
;
    if($mem->set('key1',$con,memcache_compressed,60)){
        echo '添加资源ok';
    }*/
    //查询
    $val=$mem->get('key1');
//修改
    //可以使用replace
    if($mem->replace(key11,'hello',memcache_compressed,60)){
        echo 'replace ok';
    }else{
        echo 'replace no ok';
    }
    //删除
    echo
;
    if($mem->delete('key14')){
        echo 'key14 删除';
    }else{
        echo 'key14不存在';
    }
总结:
1.      mem服务的数据不是同步的, 数据是分布的
2.      把什么数据放入到哪个memcached是由客户端的mem对象决定
3.      当执行addserver的时候,并不是立即去连接mem服务,而是通过计算,hash后才去决定连接哪个mem服务,因此当你大量加入服务器到连接池,没有多余开销
其它类似信息

推荐信息