php模块memcache和memcached区别分析


Posted in PHP onJune 14, 2011

1.目前大多数php环境里使用的都是不带d的memcache版本,这个版本出的比较早,是一个原生版本,完全在php框架内开发的。与之对应的带d的memcached是建立在libmemcached的基础上,所以相对来说,memcached版本的功能更全一些。
memcache:http://cn2.php.net/manual/en/book.memcache.php
memcached:http://cn2.php.net/manual/en/book.memcached.php
2.Memcache是原生实现的,支持OO和非OO两套接口并存。而memcached是使用libmemcached,只支持OO接口。
3.memcached还有个非常称赞的地方,就是flag不是在操作的时候设置了,而是有了一个统一的setOption()。Memcached实现了更多的memcached协议。
4.memcached支持Binary Protocol,而memcache不支持。这意味着memcached会有更高的性能。不过memcached目前还不支持长连接。

下面有一张表,来对比php客户端扩展memcache与memcached
http://code.google.com/p/memcached/wiki/PHPClientComparison

另外一点也是大家比较关心的,就是所使用的算法。大家都知道“一致性hash算法”是当添加或删除存储节点时,对存储在memcached上的数据影响较小的一种算法。那么在php的两个扩展库中,都可以使用该算法,只是设置方法有所不同。
Memcache
修改php.ini添加:
[Memcache]
Memcache.allow_failover = 1
……
……
Memcache.hash_strategy =consistent
Memcache.hash_function =crc32
……
……
或在php中使用ini_set方法:
Ini_set(‘memcache.hash_strategy','standard');
Ini_set(‘memcache.hash_function','crc32');

Memcached
$mem = new memcached();
$mem->setOption(Memcached::OPT_DISTRIBUTION,Memcached::DISTRIBUTION_CONSISTENT);
$mem->setOption(Memcached::OPT_LIBKETAMA_COMPATIBLE,true);

PHP 相关文章推荐
使用php4加速网络传输
Oct 09 PHP
js下函数般调用正则的方法附代码
Jun 22 PHP
PHP define函数的使用说明
Aug 27 PHP
php PDO中文乱码解决办法
Jul 20 PHP
php下拉选项的批量操作的实现代码
Oct 14 PHP
php中filter_input函数用法分析
Nov 15 PHP
php编写的一个E-mail验证类
Mar 25 PHP
深入浅析php中sprintf与printf函数的用法及区别
Jan 08 PHP
PHP数组相加操作及与array_merge的区别浅析
Nov 26 PHP
php获取指定数量随机字符串的方法
Feb 06 PHP
PHP定义字符串的四种方式详解
Feb 06 PHP
thinkPHP5.1框架中Request类四种调用方式示例
Aug 03 PHP
sphinx增量索引的一个问题
Jun 14 #PHP
批量获取memcache值并按key的顺序返回的实现代码
Jun 14 #PHP
提高define性能的php扩展hidef的安装和使用
Jun 14 #PHP
php学习笔记 php中面向对象三大特性之一[封装性]的应用
Jun 13 #PHP
php学习笔记 面向对象的构造与析构方法
Jun 13 #PHP
php学习笔记 类的声明与对象实例化
Jun 13 #PHP
php学习笔记 PHP面向对象的程序设计
Jun 13 #PHP
You might like
PHP下MAIL的另一解决方案
2006/10/09 PHP
一个图形显示IP的PHP程序代码
2007/10/19 PHP
php使用Smarty的相关注意事项及访问变量的几种方式
2011/12/08 PHP
php上传图片到指定位置路径保存到数据库的具体实现
2013/12/30 PHP
PHP并发多进程处理利器Gearman使用介绍
2016/05/16 PHP
thinkPHP5分页功能实现方法分析
2017/10/25 PHP
JQuery中html()方法使用不当带来的陷阱
2011/04/07 Javascript
js中scrollHeight,scrollWidth,scrollLeft,scrolltop等差别介绍
2012/05/16 Javascript
鼠标移动到图片名上,显示图片的简单实例
2013/07/14 Javascript
jquery用get实现ajax在ie里面刷新不进入后台解决方法
2013/08/12 Javascript
跟我学Nodejs(三)--- Node.js模块
2014/05/25 NodeJs
JavaScript中的变量作用域介绍
2014/12/31 Javascript
JS实现的自定义水平滚动字体插件完整实例
2016/06/17 Javascript
jQuery利用sort对DOM元素进行排序操作
2016/11/07 Javascript
three.js实现圆柱体
2018/12/30 Javascript
Webpack4 使用Babel处理ES6语法的方法示例
2019/03/07 Javascript
前端vue-cli项目中使用img图片和background背景图的几种方法
2019/11/13 Javascript
跟老齐学Python之关于循环的小伎俩
2014/10/02 Python
python一键升级所有pip package的方法
2017/01/16 Python
python使用turtle库绘制时钟
2020/03/25 Python
python实现flappy bird游戏
2018/12/24 Python
Python当中的array数组对象实例详解
2019/06/12 Python
python对常见数据类型的遍历解析
2019/08/27 Python
python函数声明和调用定义及原理详解
2019/12/02 Python
Python线程threading模块用法详解
2020/02/26 Python
Python学习之路安装pycharm的教程详解
2020/06/17 Python
自定义Django_rest_framework_jwt登陆错误返回的解决
2020/10/18 Python
Python函数调用追踪实现代码
2020/11/27 Python
信息技术专业个人自我评价
2013/12/11 职场文书
咖啡店创业计划书
2014/08/15 职场文书
运动会主持词大全
2015/07/02 职场文书
结婚喜宴迎宾词
2015/08/10 职场文书
共青团优秀团员申请书(范文)
2019/08/15 职场文书
python opencv旋转图片的使用方法
2021/06/04 Python
Python下载商品数据并连接数据库且保存数据
2022/03/31 Python
德生TECSUN S-2000使用手册文字版
2022/05/10 无线电