一文深入了解 Redis 内存模型,Redis 的快是有原因的

Redis 是目前最火爆的内存数据库之一,通过在内存中读写数据,大大提高了读写速度,可以说 Redis 是实现网站高并发不可或缺的一部分。

我们使用 Redis 时,会接触 Redis 的 5 种对象类型(字符串、哈希、列表、集合、有序集合),丰富的类型是 Redis 相对于 Memcached 等的一大优势。在了解 Redis 的 5 种对象类型的用法和特点的基础上,进一步了解 Redis 的内存模型,对 Redis 的使用有很大帮助,例如:

  1. 估算 Redis 内存使用量。目前为止,内存的使用成本仍然相对较高,使用内存不能无所顾忌;根据需求合理的评估 Redis 的内存使用量,选择合适的机器配置,可以在满足需求的情况下节约成本。
  2. 优化内存占用。了解 Redis 内存模型可以选择更合适的数据类型和编码,更好的利用 Redis 内存。
  3. 分析解决问题。当 Redis 出现阻塞、内存占用等问题时,尽快发现导致问题的原因,便于分析解决问题。

我将介绍 Redis 的内存模型(以 3.0 为例),包括 Redis 占用内存的情况及如何查询、不同的对象类型在内存中的编码方式、内存分配器(jemalloc)、简单动态字符串(SDS)、RedisObject 等;然后在此基础上介绍几个 Redis 内存模型的应用。

阅读全文: http://gitbook.cn/gitchat/activity/5e6898b20416a205e76f7f55

您还可以下载 **** 旗下精品原创内容社区 GitChat App ,阅读更多 GitChat 专享技术内容哦。

一文深入了解 Redis 内存模型,Redis 的快是有原因的