bloom filter的开源实现程序memcached bloom filter 11月06日

bloom filter是我目前看到的最经典的算法之一,用非常低的错误率换取非常高的时间、空间的效率,在各种海量数据场景或者需要快速判断的场景中都得到了大量的使用,但是,在国内的互联网,至少公开的研究中,还很少有人把这个当成一个课题来研究,也没有一个系统级别的开源的实现。

mc_bloom_filter 是用memcached的协议来封装的bloom filter的操作,牺牲了一些bloom filter的特性,来成全所有的语言能使用这一高效的工具,这是这个项目开发的目标。 (更多…)

memcache和memcached之间的区别和联系【转】 07月11日

由于在项目后期会引入缓存策略对角色的数据进行缓存,而现在我们大部分缓存都使用文件缓存,开发过网页游戏的朋友们大都知道,语言包和游戏相关的数 据大部分不经常改动,有时候几个星期不需要更新,只是在进行版本更新的时候才重新生成一次数据缓存,而角色的数据和数值时刻在变化着,会频繁的更新和操 作,采用文件缓存会频繁地进行I/O操作,在这个功能上文件缓存就不太适合了,所以对于角色的数据采取内存缓存策略在这里就比较合适。

对于内存缓存,比较常用的有两种memcache和memcached扩展。而memcached和memcache的守护进程memcached同名, 比较容易引起混淆,甚至提到memcached,有些人第一想到的是后台的守护进程,这里还是有必要分析一下两者之间的区别,以下观点仅是个人观点,希望 朋友进行补充和更正。
首先我们可以从php官方手册上可以清晰的看到两者的区别:
memcache:http://cn2.php.net/manual/en/book.memcache.php
memcached:http://cn2.php.net/manual/en/book.memcached.php

memcache是完全在PHP框架内开发的,memecached是使用libmemcached的。从手册上看,memcached 会比 memcache 多几个方法,使用方式上都差不多。 (更多…)