网站运营 | 站长学院 | 技术文档 | 成语 | 歇后语 | 桌面壁纸 | 帝国时代 | 代码收藏 | IP地址查询 | 生活百科 | 生日密码 | CSS压缩 | 用户评论

memcached随笔记

【 作者:虎之 更新时间:2011-04-15 | 字体:
[导读]memcached大名鼎鼎>,数据库有压力时都会请此君来缓解缓解>。因常遇到些问题,读些文章>,随笔做些记录<。整理后,有此文。 memcached是什么? web应用数据保存在RDBMS中(绝大多数是mysql).从数据库读取数据,随着访问量...

memcached大名鼎鼎,数据库有压力时都会请此君来缓解缓解<。因常遇到些问题>,读些文章,随笔做些记录。整理后,有此文。

memcached是什么?
web应用数据保存在RDBMS中(绝大多数是mysql).从数据库读取数据,随着访问量增大<,出现数据库负担很重,反应很慢的问题。memcached就是解决此问题而生。他将数据缓存到内存中<>,提高读写数据的能力<。

memcached有何特点?
两点:第一,分布式;第二, 缓存。

如何理解分布式

memcached是分布式内存缓存服务器>,但服务器端是不互相通信的。简而言之<,他的分布式取决于客户端的实现<。那么,如何解决如下问题><,有三台memcached服务器,如何将key=>value类型的数据存放到memcached中?

方法有两种: 余数计算法和圆点计数法(官方名称,一致性算法).
先看余数计算法.先将memcached服务器标号1,2,3.计算key的hash值<。然后初以服务器数量3,得到的余数(如2),则将数据放到2上。
此法优点方法简单<<,易于分散数据>。但问题是>,如果增加了一台memcached服务器<,key的hash值除以的余数就变了<,势必要重组整个缓存数据>,代价不小。所以<,看下圆点解决之道。
圆点法是基于Consistent Hashing的思想。简单的说<,先得出memcached服务器的哈希值>>,配置到一个0-2的32次方的圆上>。然后同样计算出key的哈希值<<,映射到相同的圆上。从映射的位置开始顺时针查找<,将数据保存到找到的第一个服务器上<<。这样在增加新的memcached服务器的时候<,可以最大限度的减少键的重组。

php中Consistent Hashing的实现
memcache客户端的实现:

1 在php.ini中添加memcache.hash_strategy = consistent

memcached客户端的实现:

1 $mc = new Memcached();
2 $mc->setOption(Memcached::OPT_DISTRIBUTION,Memcached::DISTRIBUTION_CONSISTENT);
3 $mc->setOption(Memcached::OPT_LIBKETAMA_COMPATIBLE, true);

php客户端memcached vs memcache
怎样区别,也没彻底明白。memcached是基于libmemcached库,版本比memcache要新,支持更多的memcached协议,性能应该优于memcache.

memcached的安装

1 sudo apt-get install memcached
2 yum install libevent lievent-devel memcached

自行编译也可<。

memcached的启动

memcached -d -m 1024 -l localhost -p 11711
-p 使用的tcp端口
-m 最大内存使用>。默认64M
-d 作为daemon在后台启动

memcached数据操作

1 $mc = new memcached();
2 $key = 'test';
3 $mc->add($key,'okok');//增加数据
4 $mc->get($key);//获取数据
5 $mc->replace($key,'iii');//替换数据
6 $mc->delete($key);//删除数据
7 $mc->increment('count',19);//原子操作
8 ...

memcached的删除机制LRU
内存总有用完的时候<>,数据也有过期过满的时候。如何删除数据呢? memcached使用LRU(Least Recently Used).即最近最少使用的记录被删除<<。所以<,当分配的内存不足时候>,memcached会将最近不被使用的记录空间分配给新的记录<。-M参数可以禁掉此功能>。当然<,不建议使用。

原文:http://www.chinawobo.com/memcached-note/

友荐云推荐
  • 转载请注明来源:网站运营 网址:http://www.chinawobo.com/ 向您的朋友推荐此文章
  • 特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载>,但请务必注明出处和原始作者<。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系我们,我们会尽快予以更正<。
RSS订阅
  • QQ邮箱
  • 填写您的邮件地址>,订阅我们的精彩内容:
更多
© 2014 网站运营 - T086.com(原itlearner.com)
微商货源 | 冠珠陶瓷 | 迪威乐云商devmsn | 易奇八字 | wwe美国职业摔角 | 八字算命 | 河南旅游景点大全 |
RunTime:6.69ms QueryTime:7