头图

Memcached是一个高性能的分布式的内存对象缓存系统。通过使用Memcached可以支持高负载的网站系统,以分担数据库的压力。Memcached通过在内存里维护一个统一的巨大的Hash表来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。但是Memcached不能将数据进行持久化,因此严格意义来说,Memcached只能叫做一个缓存技术,而不能叫做数据库。
  
Memcached为了达到最快的读写速度将数据都保存在内存中。如果不将数据放到内存中,而是通过磁盘的I/O来读写数据,速度将会受到严重的影响。另一方面,在内存越来越便宜的今天,基于内存的存储方式将会越来越受到欢迎。
  
视频讲解如下:
https://www.bilibili.com/video/BV1Mqe6e6Exj/?aid=112852966968...
  
Memcached的体系架构简单来说就是在内存中维护一张巨大的Hash表,并提供自己的一套路由算法来维护数据的操作。下图展示了Memcached的体系架构。
image.png
  

从上图中可以看出,Memcached的数据分布式存储是通过客户端应用程序来实现的,而不是像MongoDB或者Redis那样是在服务端实现的。


赵渝强老师
33 声望11 粉丝

20年以上的IT行业从业经历,清华大学计算机软件工程专业毕业,京东大学大数据学院院长,Oracle中国有限公司高级技术顾问;曾在BEA、甲骨文、摩托罗拉等世界500强公司担任高级软件架构师或咨询顾问等要职,精通大...