谈及php搭配memcached使用,已经是老生常谈的问题。但是有一些细节,不见得人人清楚。比如说php的模块memcache和memcached有什么区别等。下面我就简单介绍一下。

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);

来源:http://www.jb51.net/article/27366.htm

php模块memcache和memcached区别分析相关推荐

  1. php的扩展memcache和memcached区别分析

    转载自:http://www.jb51.net/article/27366.htm ,个人感觉总结的特别的好! 1.目前大多数php环境里使用的都是不带d的memcache版本,这个版本出的比较早,是 ...

  2. memcache和memcached区别

    在写这篇文章之前一直对memcache .memcached模糊,相差一个字母,特此总结下: Memcache是什么? Memcache是一个自由和开放源代码.高性能.分配的内存对象缓存系统.用于加速 ...

  3. Memcache与Memcached的区别

    Memcached是一个软件,而PHP包括了Memcache和Memcached 2个扩展,它们的守护进程都为memcached,比较容易一起混淆. 它们的区别: memcache是比较早的一个版本, ...

  4. php mysql memcache_php的memcache和memcached扩展区别

    老生长谈的问题了.我这里就整理一下. 首先看下时间,memcache最早是在2004年2月开发的,最后更新是在2013年4月,而memcached最早是在2009年1月开发的,最后更新是在2014年1 ...

  5. Memcached深度分析【zz】

    Memcached深度分析 Memcached是danga.com(运营LiveJournal的技术团队)开发的一套分布式内存对象缓存系统,用于在动态系统中减少数据库负载,提升性能.关于这个东西,相信 ...

  6. PHP7 下安装 memcache 和 memcached 扩展

    转载自:https://www.jianshu.com/p/c06051207f6e Memcached 是高性能的分布式内存缓存服务器,而PHP memcache 和 memcached 都是 Me ...

  7. SAP与ORACLE的区别分析及对比

    SAP与ORACLE的区别分析及对比[转] 目前在ERP业界中存在两个巨愕--SAP 的 ECC 及 ORACLE 的 EBS ,这两个大型ERP解决方案几乎占据了世界上各个不同行业的大型企业的信息系 ...

  8. RADAR和LIDAR区别分析

    RADAR和LIDAR区别分析 如果一直关注自动驾驶汽车的新闻,可能已经注意到许多自动驾驶汽车制造商正在使用LIDAR(光成像检测和测距)进行车载物体检测.对于许多自动 驾驶汽车应用而言,LIDAR比 ...

  9. 分享memcache和memcached安装过程

    Memcache是什么? Memcache是一个自由和开放源代码.高性能.分配的内存对象缓存系统.用于加速动态web应用程序,减轻数据库负载. 它可以应对任意多个连接,使用非阻塞的网络IO.由于它的工 ...

最新文章

  1. 产生螺旋分类样本集合 SpiralData
  2. libuv 中文编程指南(零)前言
  3. Redis数据库的应用场景介绍
  4. 利用WPS 2013文字制作精美的信纸的方法
  5. 大乐透python预测程序_Python生成随机验证码,大乐透号码
  6. 微软复合文档二进制格式实例分析
  7. [HDU1754]I Hate It线段树裸题
  8. C#调用存储过程,并且获得返回值和OutPut字符串
  9. 用户名 不在 sudoers 文件中。此事将被报告。
  10. SQL查询优化工具--EverSQL
  11. 印象笔记的插件在chrome使用问题
  12. SQL Server 数据库学习
  13. 将TIF图像格式转化为PNG或者JPG格式
  14. 解决因多网卡导致dubbo注册到ZK的IP错误问题,dubbox(当当,2.8.4)升级至dubbo(Apache,2.7.15)并集成
  15. [转]“荒”是民工用脚投票的权利自救
  16. 无线测温系统在高低压开关柜内的运行---安科瑞 顾城
  17. 为什么E-GREEDY算法中e越小,性能会更好
  18. 大学四年---一个快要毕业学生的反思
  19. 使用HttpURLConnection下载网络文件
  20. freeswitch 显示主叫名称和主叫号码

热门文章

  1. 10_InfluxDB常用函数(三)变换类函数(DERIVATIVE, DIFFERENCE,ELAPSED,MOVING_AVERAGE,NON_NEGATIVE_DERIVATIVE)等
  2. 3.TF-IDF算法介绍、应用、NLTK实现TF-IDF算法、Sklearn实现TF-IDF算法、算法的不足、算法改进
  3. 使用jquery获取radio的值
  4. redhat下安装mysql 5.6.20,解压zip包,查看已经安装过的mysql,卸载rpm安装包,安装mysql服务器端和客户端,修改mysql用户名,登陆mysql,启动关闭mysql
  5. python find next_美化组4,findNext()函数
  6. UART_RECV详细设计方案
  7. 关于EXPORT_SYMBOL
  8. C++const类型的引用参数
  9. matlab怎么将一个矩阵转化为灰度图
  10. hystrix thread pool Metrics