首页 存档 技术 查看内容

memcached分布式实现原理

2018-3-30 13:00 |来自: 互联网 275 0

摘要: 来自:Float_Luuu 的个人空间 - 开源中国社区 作者:Float_Luuu 链接:http://my.oschina.net/andylucc/blog/67144 作者介绍 陆晨,英文名Float Lu,目前就职于大众点评网,JAVA工程师,热爱开源,业余时间喜欢钻 ...

来自:Float_Luuu 的个人空间 - 开源中国社区

作者:Float_Luuu

链接:http://my.oschina.net/andylucc/blog/67144


作者介绍

陆晨,英文名Float Lu,目前就职于大众点评网,JAVA工程师,热爱开源,业余时间喜欢钻研基础技术及各种开源中间件,技术博客(http://my.oschina.net/andylucc)。


摘要


在高并发环境下,大量的读、写请求涌向数据库,此时磁盘IO将成为瓶颈,从而导致过高的响应延迟,因此缓存应运而生。无论是单机缓存还是分布式缓存都有其适应场景和优缺点,当今存在的缓存产品也是数不胜数,最常见的有redis和memcached等,既然是分布式,那么他们是怎么实现分布式的呢?本文主要介绍分布式缓存服务mencached的分布式实现原理。


缓存本质


计算机体系缓存


什么是缓存,我们先看看计算机体系结构中的存储体系,根据冯诺依曼计算机体系结构模型,计算机分为五大部分:运算器、控制器、存储器、输入设备、输出设备。结合现代计算机,CPU包含运算器和控制器两个部分,CPU负责计算,其需要的数据由存储提供,存储分为几个级别,就拿我当前的PC举个例子,我的机器存储清单如下:


1、356G的磁盘

2、4G的内存

3、3MB**缓存

4、256KB二级缓存(pre core)


除了上述部分,还有CPU内的寄存器,当然有的计算机还有一级缓存等。CPU运算器工作的时候需要数据,数据哪里来?首先从距离CPU最近的二级缓存去拿,这块缓存速度最快,通常也是体积最小,因为价格最贵:



存储金字塔


如上图所示,存储体系就像个金子塔,最上层最快,价格最贵,最下层最慢,价格也最便宜,CPU的数据源优先级一层层从上到下去寻找数据。


很显然,除了最慢的那块存储,在计算机体系中,相对较快的那些存储都可以被称为缓存,他们解决的问题是让存储访问更快。


缓存应用系统


计算机体系存储系统模型扩展到应用也是一样,应用需要数据,数据哪里来?缓存(更快的存储)-

声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部