【赵渝强老师】Memcached集群的架构

Memcached是一个高性能的分布式的内存对象缓存系统。通过使用Memcached可以支持高负载的网站系统,以分担数据库的压力。Memcached通过在内存里维护一个统一的巨大的Hash表来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。但是Memcached不能将数据进行持久化,因此严格意义来说,Memcached只能叫做一个缓存技术,而不能叫做数据库。

Memcached为了达到最快的读写速度将数据都保存在内存中。如果不将数据放到内存中,而是通过磁盘的I/O来读写数据,速度将会受到严重的影响。另一方面,在内存越来越便宜的今天,基于内存的存储方式将会越来越受到欢迎。

视频讲解如下:

Memcached集群的架构
【赵渝强老师】Memcached集群的架构

Memcached的体系架构简单来说就是在内存中维护一张巨大的Hash表,并提供自己的一套路由算法来维护数据的操作。下图展示了Memcached的体系架构。

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

相关推荐
記億揺晃着的那天1 分钟前
数据库中 ACID 四个核心特性
数据库·mysql·oracle·系统设计·acid
佛祖让我来巡山4 分钟前
Redis实战终极指南:从客户端集成到性能优化,手把手教你避坑【第四部分】
redis·redis分布式锁实现·redis秒杀
jyd012410 分钟前
MongoDB 与 Java 实体类型 LocalTime 时区转换问题解决方案
java·数据库·mongodb
一抓掉一大把35 分钟前
RuoYi .net-实现商城秒杀下单(redis,rabbitmq)
redis·mysql·c#·rabbitmq·.net
神奇侠20241 小时前
基于spring-boot-admin实现对应用、数据库、nginx等监控
java·数据库·nginx
行者游学1 小时前
ETCD 权限配置
数据库·etcd
Zhao_yani2 小时前
Apache Drill 连接 MySQL 或 PostgreSQL 数据库
数据库·mysql·postgresql·drill
惺忪97983 小时前
QAbstractListModel 详细解析
数据库
国服第二切图仔4 小时前
Rust开发实战之操作SQLite数据库——从零构建数据持久化应用
数据库·rust·sqlite
安审若无8 小时前
图数据库neoj4安装部署使用
linux·运维·数据库