PHP模块memcached使用指南


Posted in PHP onDecember 08, 2014

1.添加扩展包

php_memcache.dll

2.在PHP.INI添加

extension=php_memcache.dll

3.程序

<?php

    //创建一个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.添加数组

    //在添加数组是,根据需要. 希望序列号放入  ,

    //serialize<=>unserialize, 如果根据需要,也可以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 "<br/>";

    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 "<br/>";

    if($mem->delete('key14')){

        echo 'key14 删除';

    }else{

        echo 'key14不存在';

    }

总结:

1.      mem服务的数据不是同步的, 数据是分布的

2.      把什么数据放入到哪个memcached是由客户端的mem对象决定

3.      当执行addServer的时候,并不是立即去连接mem服务,而是通过计算,hash后才去决定连接哪个mem服务,因此当你大量加入服务器到连接池,没有多余开销

PHP 相关文章推荐
PHP Token(令牌)设计
Mar 15 PHP
php class中public,private,protected的区别以及实例分析
Jun 18 PHP
smarty模板引擎基础知识入门
Mar 30 PHP
浅谈php错误提示及查错方法
Jul 14 PHP
合格的PHP程序员必备技能
Nov 13 PHP
PHP实现的一致性哈希算法完整实例
Nov 14 PHP
WordPress中Gravatar头像缓存到本地及相关优化的技巧
Dec 19 PHP
Zend Framework实现多文件上传功能实例
Mar 21 PHP
基于PHP实现商品成交时发送短信功能
May 11 PHP
golang与PHP输出excel示例
Jul 22 PHP
PHP基于ORM方式操作MySQL数据库实例
Jun 21 PHP
php日志函数error_log用法实例分析
Sep 23 PHP
PHP原生函数一定好吗?
Dec 08 #PHP
thinkphp中ajax与php响应过程详解
Dec 08 #PHP
一款简单实用的php操作mysql数据库类
Dec 08 #PHP
php表单敏感字符过滤类
Dec 08 #PHP
php网页病毒清除类
Dec 08 #PHP
ThinkPHP入口文件设置及相关注意事项分析
Dec 05 #PHP
简单实用的PHP防注入类实例
Dec 05 #PHP
You might like
探讨:php中在foreach中使用foreach ($arr as &amp;$value) 这种类型的解释
2013/06/24 PHP
javascript StringBuilder类实现
2008/12/22 Javascript
在IE下获取object(ActiveX)的Param的代码
2009/09/15 Javascript
用Mootools获得操作索引的两种方法分享
2011/12/12 Javascript
js实现带搜索功能的下拉框实时搜索实时匹配
2013/11/05 Javascript
JS 日期比较大小的简单实例
2014/01/13 Javascript
Javascript字符串浏览器兼容问题分析
2014/12/01 Javascript
JavaScript中数组成员的添加、删除介绍
2014/12/30 Javascript
JS选项卡动态替换banner图片路径的方法
2015/05/11 Javascript
谈谈target=_new和_blank的不同之处
2016/10/25 Javascript
Node.js连接postgreSQL并进行数据操作
2016/12/18 Javascript
浅谈JS 数字和字符串之间相互转化的纠纷
2017/10/20 Javascript
基于js文件加载优化(详解)
2018/01/03 Javascript
详解webpack打包后如何调试的方法步骤
2018/11/07 Javascript
vue 翻页组件vue-flip-page效果
2020/02/05 Javascript
vue elementui tree 任意级别拖拽功能代码
2020/08/31 Javascript
使用webpack5从0到1搭建一个react项目的实现步骤
2020/12/16 Javascript
[02:16]DOTA2超级联赛专访Burning 逆袭需要抓住机会
2013/06/24 DOTA
[10:24]郎朗助力完美“圣”典,天籁交织奏响序曲
2016/12/18 DOTA
[35:43]2018DOTA2亚洲邀请赛 4.1 小组赛B组 paiN vs Effect
2018/04/03 DOTA
浅析Python的Django框架中的Memcached
2015/07/23 Python
Python  pip安装lxml出错的问题解决办法
2017/02/10 Python
Python实现随机选择元素功能
2017/09/14 Python
浅谈python迭代器
2017/11/08 Python
python计算日期之间的放假日期
2018/06/05 Python
基于django channel实现websocket的聊天室的方法示例
2019/04/11 Python
python批量处理txt文件的实例代码
2020/01/13 Python
Python3.7实现验证码登录方式代码实例
2020/02/14 Python
使用 Python 在京东上抢口罩的思路详解
2020/02/27 Python
分享一个页面平滑滚动小技巧(推荐)
2019/10/23 HTML / CSS
戴尔加拿大官网:Dell加拿大
2016/09/17 全球购物
新加坡最受追捧的体验平台:Hapz
2018/01/01 全球购物
交警个人先进事迹材料
2014/05/11 职场文书
离婚协议书格式
2014/11/21 职场文书
离婚被告答辩状
2015/05/22 职场文书
幼儿园毕业致辞
2015/07/29 职场文书