memcached

✍ dations ◷ 2025-08-13 22:03:54 #开放源代码,电脑内存,键-值数据库

memcached是一套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发,但目前被许多网站使用。这是一套开放源代码软件,以BSD license授权发布。

memcached缺乏认证以及安全管制,这代表应该将memcached服务器放置在防火墙后。

memcached的API使用三十二比特的循环冗余校验(CRC-32)计算键值后,将数据分散在不同的机器上。当表格满了以后,接下来新增的数据会以LRU机制替换掉。由于memcached通常只是当作缓存系统使用,所以使用memcached的应用程序在写回较慢的系统时(像是后端的数据库)需要额外的代码更新memcached内的数据。

将纯粹使用数据库查询的代码加上memcached支持是很简单的,假设这是原来的代码:

function get_foo (int userid) {   result = db_select("SELECT * FROM users WHERE userid = ?", userid);   return result;}

加上memcached的缓存机制后:

function get_foo (int userid) {    result = memcached_fetch("userrow:" + userid);    if (!result) {        result = db_select("SELECT * FROM users WHERE userid = ?", userid);        memcached_add("userrow:" + userid,  result);    }    return result;}

上述的程序会先到memcached检查是否有userrow:userid的数据,如果有则直接传回结果,如果不存在时再去数据库查询,并将结果放到memcached内。

在memcached内已经有缓存信息时将数据库的数据更新后,上述的程序会抓到旧的数据,这是属于Cache coherency的问题。其中一种解决的方法是在更新数据库时,同时更新memcached内的信息:

相关

  • 噪音噪音,又称噪声,从物理角度上看,是声波的频率、强弱变化无规律、杂乱无章的声音。绝大部分噪音都是准随机波,如果符合数学上的随机过程,那就属于白噪声:55。噪音是令人生理或心理
  • X连锁淋巴增生性疾病X连锁淋巴细胞增生性疾病(X-linked lymphoproliferative disease),又名邓肯病(Duncan's disease):86或珀蒂洛综合征(Purtilo syndrome),是一种淋巴增生性障碍(英语:lymphoproliferativ
  • 先天性水痘症候群先天性水痘症候群(Costello syndrome),又名小黑人症、克斯提洛氏弹性蛋白缺陷症、科斯特洛综合症、面肌肉骨骼综合症(faciocutaneoskeletal syndrome)或FCS综合症等各种名称,是一
  • 甲壳亚门见内文甲壳亚门(学名:Crustacea)是由非常大的一组的节肢动物门形成的,通常被当作是一个亚门,包括常见的物种,例如螃蟹,虾,龙虾,淡水龙虾,磷虾,和藤壶等等。这些物种通过对非常不同的环
  • 印度航空182号班机空难印度航空182号班机是印度航空的定期航班,执行多伦多—蒙特利尔—伦敦—新德里—孟买航线(其中多伦多至蒙特利尔段为181号班机实际执飞)。1985年6月23日,一架波音747-237B客机执
  • 楚加奇楚加奇国家森林(英语:Chugach National Forest)是美国的一处国家森林,1907年7月23日建立,位处阿拉斯加州,占地面积6,908,540英亩(27,957.9平方千米),是美国境内第二大国家森林,最近的
  • 萨哈林-哈巴罗夫斯克-符拉迪沃斯托克输气管道库页岛-伯力-海参崴油气管道(俄语:Газопровод «Сахалин-Хабаровск-Владивосток»,“萨哈林-伯力-海参崴输气管道”)是俄罗斯远东地区的
  • 胡佛水坝胡佛水坝(英语:Hoover Dam,又称Boulder Dam)是一座落于科罗拉多河黑峡谷(英语:Black Canyon of the Colorado)河段之上的混凝土重力式拱坝(英语:Arch-gravity dam),位于美国西南部城市
  • 舱外活动列表 (2000年至2014年)本列表包含了所有的2000年至2014年之间的太空行走;即所有宇航员完全或部分离开航天器的事件。舱外活动开始及结束时间均为协调世界时(UTC)时区。
  • 鼩形亚目鼩形亚目(学名:Soricomorpha),又名鼩鼱亚目,是生物学上真盲缺目的一个分化支。在过去,鼩形亚目的动物都属于食虫目。后来发现食虫目属下的物种其实原来是多系群,所以有不少原来属于