Memcached 知识整理

关于Redis与Memcached的区别可以看看这篇文章。
http://blog.csdn.net/tonysz126/article/details/8280696/
多数情况下Redis具备更优秀的功能,但是memcached的并发能力应该更强,而且分布式部署的速度会快些。Redis自身不具备分布式部署的能力的,不过听闻新版本是开始往这方面努力了。

关于Memcached和Memcache的区别,也请找找文章阅读阅读。
memcache是pecl扩展库版本
memcached是libmemcached版本
我理解是起错名字了,很容易跟memcached服务混淆,反正是起错名字了。

关于Memcached的详细介绍,这篇文章不错:http://kb.cnblogs.com/page/42731/ ,里面介绍了分布式客户端的内部逻辑,对理解所谓的分布式很有帮助。
不管对错,项目里面已经用了Memcached了,所以整理下开发环境的安装过程。

Windows安装

下载地址是
- 先下载memcached-win32启动软件,如果下载不了就百度找找
http://down2.121down.com:8181/soft/memcached-1.4.20.rar
G:\***\memcached-win64-1.4.4-14\memcached\memcached.exe -d install (安装)
G:\***\memcached-win64-1.4.4-14\memcached\memcached.exe -d start (启动)
看一看进程里面有没有memcached进程,有则启动成功。

如果在没有安装过的情况下,出现”failed to install service or service already installed”错误,可能是cmd.exe需要用管理员身份运行。

这样安装将会在系统每次启动的时候都需要启动一次,不过是开发环境,所以这样就够了,如果正式环境就最好是发启动发布为服务。
如果要配置为服务,可以参考这里来配置:http://www.jb51.net/article/30334.htm

注意,memcached是进程的名称,是服务端的叫法,跟客户端memcached和memcache是没有关系的,客户端的memcached和memcache是不一样的,因为两者基于的lib不一样,从而提供了不同的功能、性能。

PHP中配置 Memcach Client端

1、下载: php_memcache.dll 组件,可以下载这个

2、复制 php_memcache.dll 到指定的组件目录, 默认在 php\ext\
3、在PHP.ini 加入一句话: extension=php_memcache.dll
4、重启WEB服务,使用 phpinfo() 函数查看启用情况 如果有memcache,那么就说明安装成功!

验证代码

<?php
$memcache = new Memcache();  //windows
$memcache->connect('127.0.0.1', 11211 ) or die ( "Could not connect Memcached server!" );  
$memcache->set( 'Memcache', "hello Memcache!<br/>");
echo $memcache->get('Memcache');
?>

window下搞这个配置还几麻烦的,其中dll文件就已经难找,在官网上都不知道哪里可以去得到。

严格来说,memcached客户端在window下是没法配置的,因为window的lib没有人编译有现成的,不过可以使用client来处理,这篇文章可以帮忙。
http://hudeyong926.iteye.com/blog/887754

关于Memcached的一些关键内容:
1、分布式实现方案:利用Hash 或者 一致性Hash 方法来存放和查找Key-Value。服务器间不通讯。考虑好数据分布的均匀性。
2、存储不能大于1M的数据。(受限于Slab内存分配算法)
3、多路复用I/O模型,+ 多线程模型。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值