【赵渝强老师】Memcached的数据存储方式

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
云数据库 Tair(兼容Redis),内存型 2GB
简介: Memcached 是一个高性能的分布式内存对象缓存系统,用于减轻数据库压力,支持高负载网站。它通过内存中的巨大 Hash 表存储各种数据,但不支持数据持久化。视频讲解和数据存储方式图示详见内容。

b147.png

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

   

视频讲解如下:

   

Memcached在内存中维护一张巨大的Hash表,并且按组分配内存。具体来说就是,每次先分配一个大小为1M的Slab。然后在1M的Slab空间里根据保存数据的大小再划分相同大小的Chunk。换句话说,Memcached在保存数据之前需要先为数据分片内存存储的空间。这样做的优点是最大限度的利用内存,从而避免产生内存碎片。下图说明了Memcached的数据存储方式。




相关文章
|
1月前
|
存储 缓存 NoSQL
【赵渝强老师】Memcached集群的架构
Memcached 是一个高性能的分布式内存对象缓存系统,通过在内存中维护一个巨大的 Hash 表来存储各种格式的数据,如图像、视频、文件及数据库检索结果等。它主要用于减轻数据库压力,提高网站系统的性能。Memcached 不支持数据持久化,因此仅作为缓存技术使用。其数据分布式存储由客户端应用程序实现,而非服务端。
【赵渝强老师】Memcached集群的架构
|
存储 Memcache
Memcached源码分析 - 数据存储(3)
Memcached源码分析 - 网络模型(1)Memcached源码分析 - 命令解析(2)Memcached源码分析 - 数据存储(3)Memcached源码分析 - 增删改查操作(4)Memcached源码分析 - 内存存储机制Slabs(5)Memcached源码分析 - LRU淘汰算法(6)Memcached源码分析 - 消息回应(7) 开篇  这篇文章的目的主要是为了讲清楚Memcached内部数据存储结构,以及基于该存储结构的增删改查操作过程。
1023 0
|
存储 索引 缓存
memcached实战系列(六)理解Memcached的数据存储方式
Memcached的数据存储方式被称为Slab Allocator,其基本方式是: 1:先把内存分成很多个Slab,这个大小是预先规定好的,以解决内存碎片的问题。
832 0
|
7月前
|
Linux Memcache
Linux - 安装memcached
Linux - 安装memcached
114 0
Linux - 安装memcached
|
6月前
|
缓存 Java Spring
SpringBoot配置第三方专业缓存技术Memcached 下载 安装 整合测试 2024年5000字详解
SpringBoot配置第三方专业缓存技术Memcached 下载 安装 整合测试 2024年5000字详解
50 0
|
Docker 容器
Docker下安装memcached
Docker下安装memcached
180 0
|
Shell C语言
脚本用源码来安装 memcached 服务器
脚本用源码来安装 memcached 服务器
55 1
|
Java 程序员
【memcached】下载、安装、、出错一分钟全搞定
【memcached】下载、安装、、出错一分钟全搞定
226 0
|
PHP
安装memcached 和 php-memcached 实现PHP访问memcached
安装memcached 和 php-memcached 实现PHP访问memcached
134 0
安装memcached 和 php-memcached 实现PHP访问memcached
|
缓存 安全 Java
【技术分享】Memcached介绍及php-memcache扩展安装
【技术分享】Memcached介绍及php-memcache扩展安装
132 0
【技术分享】Memcached介绍及php-memcache扩展安装
下一篇
DataWorks