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 相关文章推荐
15种PHP Encoder的比较
Apr 17 PHP
php mysql数据库操作分页类
Jun 04 PHP
允许phpmyadmin空密码登录的配置方法
May 29 PHP
phpMyAdmin出现无法载入 mcrypt 扩展,请检查PHP配置的解决方法
Mar 26 PHP
ThinkPHP让分页保持搜索状态的方法
Jul 02 PHP
日常整理PHP中简单的图形处理(经典)
Oct 26 PHP
nginx下安装php7+php5
Jul 31 PHP
PHP中利用sleep函数实现定时执行功能实现代码
Aug 25 PHP
用php和jQuery来实现“顶”和“踩”的投票功能
Oct 13 PHP
PHP编程实现阳历转换为阴历的方法实例
Aug 08 PHP
PHP DB 数据库连接类定义与用法示例
Mar 11 PHP
PHP goto语句用法实例
Aug 06 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来处理多个提交任务
2006/10/09 PHP
php FPDF类库应用实现代码
2009/03/20 PHP
一步一步学习PHP(3) php 函数
2010/02/15 PHP
PHP删除目录及目录下所有文件的方法详解
2013/06/06 PHP
php 检查电子邮件函数(自写)
2014/01/16 PHP
php实现约瑟夫问题的方法小结
2015/03/23 PHP
php基于ob_start(ob_gzhandler)实现网页压缩功能的方法
2017/02/18 PHP
php 替换文章中的图片路径,下载图片到本地服务器的方法
2018/02/06 PHP
php两点地理坐标距离的计算方法
2018/12/29 PHP
javascript客户端解决方案 缓存提供程序
2010/07/14 Javascript
jQuery getJSON()+.ashx 实现分页(改进版)
2013/03/28 Javascript
CSS+jQuery实现的一个放大缩小动画效果
2013/09/24 Javascript
js如何打印object对象
2015/10/16 Javascript
Angularjs 实现分页功能及示例代码
2016/09/14 Javascript
完美实现js焦点轮播效果(一)
2017/03/07 Javascript
angularjs中ng-bind-html的用法总结
2017/05/23 Javascript
Rollup处理并打包JS文件项目实例代码
2018/05/31 Javascript
Bootstrap Table实现定时刷新数据的方法
2018/08/13 Javascript
nodejs异步编程基础之回调函数用法分析
2018/12/26 NodeJs
Vue v-text指令简单使用方法示例
2019/09/19 Javascript
Python实现批量将word转html并将html内容发布至网站的方法
2015/07/14 Python
python密码错误三次锁定(实例讲解)
2017/11/14 Python
sublime python3 输入换行不结束的方法
2018/04/19 Python
python实现输入数字的连续加减方法
2018/06/22 Python
python使用mitmproxy抓取浏览器请求的方法
2019/07/02 Python
深入了解python中元类的相关知识
2019/08/29 Python
python SVD压缩图像的实现代码
2019/11/05 Python
Django多数据库配置及逆向生成model教程
2020/03/28 Python
使用HTML5原生对话框元素并轻松创建模态框组件
2019/03/06 HTML / CSS
学校出纳员岗位职责
2014/03/18 职场文书
教职工代表大会主持词
2014/04/01 职场文书
公司年夜饭通知
2015/04/25 职场文书
Pytorch 中net.train 和 net.eval的使用说明
2021/05/22 Python
浅谈Redis位图(Bitmap)及Redis二进制中的问题
2021/07/15 Redis
《遗弃》开发商删推文要跑路?官方回应:还在开发
2022/04/03 其他游戏
Windows Server 2019 域控制器安装图文教程
2022/04/28 Servers