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 相关文章推荐
关于php fread()使用技巧
Jan 22 PHP
Linux Apache PHP Oracle 安装配置(具体操作步骤)
Jun 17 PHP
PHP变量内存分配问题记录整理
Nov 27 PHP
php使用cookie保存用户登录的用户名实例
Jan 26 PHP
php实现中文字符截取防乱码方法汇总
Apr 29 PHP
24条货真价实的PHP代码优化技巧
Jul 28 PHP
PHP封装函数实现生成随机的字符串验证码
Jan 24 PHP
PHP实现基于栈的后缀表达式求值功能
Nov 10 PHP
基于php双引号中访问数组元素报错的解决方法
Feb 01 PHP
Yii 访问 Gii(脚手架)时出现 403 错误
Jun 06 PHP
PHP模糊查询技术实例分析【附源码下载】
Mar 07 PHP
PHP实现读取文件夹及批量重命名文件操作示例
Apr 15 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
AMFPHP php远程调用(RPC, Remote Procedure Call)工具 快速入门教程
2010/05/10 PHP
PHP输出时间差函数代码
2013/01/28 PHP
php实现微信公众平台账号自定义菜单类
2015/10/11 PHP
基于Laravel 5.2 regex验证的正确写法
2019/09/29 PHP
jqPlot Option配置对象详解
2009/07/25 Javascript
遨游,飞飞,IE,空中网 浏览器无提示关闭方法
2011/07/11 Javascript
javascript通过className来获取元素的简单示例代码
2014/01/10 Javascript
javascript中Object使用详解
2015/01/26 Javascript
文字垂直滚动之javascript代码
2015/07/29 Javascript
微信小程序 Flex布局详解
2016/10/09 Javascript
详解js中常规日期格式处理、月历渲染和倒计时函数
2016/12/28 Javascript
微信小程序 ES6Promise.all批量上传文件实现代码
2017/04/14 Javascript
Js实现中国公民身份证号码有效性验证实例代码
2017/05/03 Javascript
JavaScript实现图片放大预览效果
2020/11/02 Javascript
Python装饰器使用示例及实际应用例子
2015/03/06 Python
详解Python中__str__和__repr__方法的区别
2015/04/17 Python
深入解析Python中的上下文管理器
2016/06/28 Python
完美解决Python 2.7不能正常使用pip install的问题
2018/06/12 Python
Python中分支语句与循环语句实例详解
2018/09/13 Python
Python多进程fork()函数详解
2019/02/22 Python
对django中foreignkey的简单使用详解
2019/07/28 Python
Django框架静态文件处理、中间件、上传文件操作实例详解
2020/02/29 Python
在python image 中实现安装中文字体
2020/05/16 Python
详解vscode实现远程linux服务器上Python开发
2020/11/10 Python
Python常用断言函数实例汇总
2020/11/30 Python
KIKO美国官网:意大利的平价彩妆品牌
2017/05/16 全球购物
证婚人搞笑证婚词
2014/01/10 职场文书
老师对学生的寄语
2014/04/09 职场文书
公司承诺书范文
2014/05/19 职场文书
大学生入党自荐书
2015/03/05 职场文书
个人总结格式范文
2015/03/09 职场文书
论文致谢词范文
2015/05/14 职场文书
2015企业年终工作总结范文
2015/05/27 职场文书
2015年国庆节标语大全
2015/07/30 职场文书
《春酒》教学反思
2016/02/22 职场文书
Django使用redis配置缓存的方法
2021/06/01 Redis