注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

网易杭州 QA Team

务实 专注 分享 做有态度的QA

 
 
 
 
 

日志

 
 

memcache介绍  

来自优昙华院   2012-11-21 14:58:21|  分类: 数据库相关 |举报 |字号 订阅

  下载LOFTER 我的照片书  |
memcache作为高性能的分布式内存缓存服务器。一般的使用目的是,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的速度、提高可扩展性。
memcache介绍 - 网易杭州QA - 网易杭州 QA Team
memcache的工作原理:首先 memcached 是以守护程序方式运行于一个或多个服务器中,随时接受客户端的连接操作,客户端在与 memcached 服务建立连接之后,接下来的事情就是存取对象了,每个被存取的对象都有一个唯一的标识符 key,存取操作均通过这个 key 进行,为了提高性能,memcached中保存的数据都存储在memcached内置的内存存储空间中。由于数据仅存在于内存中,因此重启memcached、重启操作系统会导致全部数据消失。
memcache的主要目的是作为一个数据库的缓存,减轻数据库的压力,因为当数据库的存取次数较高时,数据库的性能就会下降。对于后端数据库的查询操作,根据相应的hash算法计算得到一个key,然后通过这个key去memcache中查找数据,如果这 个数据不存在,说明还没写入到memcache中,那么这时从数据库把数据提取出来放到memcache中,key就是 hash值,然后相应的设置这个数据的一个失效时间,比如一个小时,那么在这一个小时中的数据都是从memcache中取得而不必每次访问数据库,可以有效减少数据库的压力。但是由于memcache中的数据每个小时更新一次,因此在这段时间内如果数据库的数据进行了修改,前端从memcache中取得的数据并不是最新的结果,因此在对于实时性要求较高的应用中并不适用。另外对于数据的删除插入通常是实时进行的,即memcache中的数据总是最新的。
在测试中遇到的问题并不是完全由代码引起的,memcache未清理也会经常导致前端bug,通过了解memcache的原理和机制可以更好的定位和解决问题。
  评论这张
 
阅读(472)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016