memcached

✍ dations ◷ 2024-09-20 08:41:28 #开放源代码,电脑内存,键-值数据库

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内的信息:

相关

  • 印度文化印度文化,涉及到印度人生活的方方面面:语言、宗教、舞蹈、音乐、建筑、饮食等等。生活习俗因地区不同会呈现出不同的形式 。印度文化被广泛认为是一个经多地区文化融合而成的
  • 犹他大学犹他大学(University of Utah),位于美国犹他州的盐湖城市,是一所综合性公立大学,由耶稣基督后期圣徒教会领袖杨百翰于1850年建立。作为该州的旗舰大学,它提供100多个本科专业和92
  • 女性化女性化(英语:feminization)是一个改变一个人的性别特征的过程。女性化者有女性的性征或女性气质。
  • 土地工务运输局国务院中央军委测绘机构土地工务运输局(葡萄牙语:Direcção dos Serviços de Solos, Obras Públicas e Transportes,缩写:DSSOPT)是澳门特别行政区政府辖下的行政机关,范畴包括
  • 横须贺美国海军基地坐标:35°17′36″N 139°40′17″E / 35.2932°N 139.671293°E / 35.2932; 139.671293横须贺海军设施,美军官方称为“横须贺美国舰队基地”(英语:United States Fleet Activit
  • 睾丸静脉精索静脉(英语:spermatic vein)或称睾丸静脉(testicular vein),是男性的生殖腺静脉(gonadal vein),其功能为从其相应的睾丸运载缺氧血至下腔静脉或其支流。对于男性而言精索静脉相
  • 机械化步兵机械化步兵是现代陆军中的一个步兵兵种,是指搭乘步兵战车或装甲输送车机动的步兵。机械化步兵是在第二次世界大战期间,由德国在闪电战理论指导下开创的一个兵种。纳粹德国陆军
  • 阿尔达比勒省阿尔达比勒省(波斯语:اردبیل)是伊朗三十一个省份之一。面积17,881平方公里,在所有省份中排行第25。人口约1,257,600(2005年数据);首府位于阿尔达比勒。主要居民为阿塞拜疆人
  • 瓦坎达瓦坎达(英语:Wakanda)是个位于漠南非洲的虚构国家,由漫威漫画的斯坦·李和杰克·科比创建,最早出现在于1966年7月出版的《惊奇四超人(英语:Fantastic Four (comic book))》第52集。
  • 多四季论《多四季论:揭开大自然深层王国的奥秘》是湖北工程师董妙先的一部著作,曾被新华社、《光明日报》、《科技日报》等50多家报刊广泛报道。作者自称其理论是遵循如下“科学事实”