Redis 持久化机制

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: 版权声明:本文首发 http://asing1elife.com ,转载请注明出处。 https://blog.csdn.net/asing1elife/article/details/82876657 ...
版权声明:本文首发 http://asing1elife.com ,转载请注明出处。 https://blog.csdn.net/asing1elife/article/details/82876657

对于如何将数据类型持久化存储,Redis 提供一下 4 种方式

更多精彩

定时快照 snapshot

实现

  1. 在 Redis 内存的一个定时器事件,每隔一段时间就检查数据是否符合定时快照触发的条件
  2. 若触发则创建一个子进程,默认与父进程共享地址空间,再通过子进程遍历整个内存进行存储操作

缺陷

  1. 只能存储一段时间内的内存信息,若系统重启则会丢失上次快照与重启间的数据

基于语句的追加文件 aof

实现

  1. 每条使 Redis 内存数据发生改变的的命令都会被存储到一个 log 文件中
  2. 最终该 log 文件中存放的就是 Redis 的持久化数据

缺陷

  1. 过多的 log 文件导致数据体积过大,当系统重启后再次加载数据时会比较慢
    • 数据加载慢并不是因为读取速度慢,而是因为 log 中的每条命令都会需要在 Redis 中再次执行
  2. 由于每条命令都要写入 log ,所以会导致 Redis 的性能下降

虚拟内存 vm - 已弃用

实现

  1. 用户空间数据换入换出

缺陷

  1. 代码复杂
  2. 重启慢

Diskstore

实现

  1. 弃用虚拟内存后采用的新方式,实际上是使用传统的 B-tree 格式存储数据

总结

  1. 采用合适的数据类型存储数据,并尽可能使用紧凑存储参数
  2. 当业务场景无需持久化时,关闭所有的持久化机制可获得更好的性能及最大的内存使用量
  3. 不要让 Redis 使用的物理内存超过服务器的 3/5
相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
1月前
|
存储 缓存 NoSQL
【Redis】Redis魔法:揭秘Key的自动消失术——过期删除机制解析
【Redis】Redis魔法:揭秘Key的自动消失术——过期删除机制解析
97 0
|
3天前
|
存储 NoSQL Java
Redis奔溃了快看看有没开启持久化
Reis作为一个内存数据库,整个数据库状态都存储在内存里,如果在运行过程中发生崩溃,那整个数据库状态可就完全不见了,相当于整个服务器被初始化。Redis在这方面肯定有所作为,我们来看看它做了什么功夫~
31 0
Redis奔溃了快看看有没开启持久化
|
14天前
|
存储 NoSQL 算法
redis数据持久化
redis数据持久化
|
24天前
|
NoSQL Java Redis
【Redis深度专题】「踩坑技术提升」一文教会你如何在支持Redis在低版本Jedis情况下兼容Redis的ACL机制
【Redis深度专题】「踩坑技术提升」一文教会你如何在支持Redis在低版本Jedis情况下兼容Redis的ACL机制
52 0
|
24天前
|
缓存 NoSQL Shell
【Redis深度专题】「核心技术提升」探究Redis服务启动的过程机制的技术原理和流程分析的指南(持久化功能分析)
【Redis深度专题】「核心技术提升」探究Redis服务启动的过程机制的技术原理和流程分析的指南(持久化功能分析)
25 0
|
24天前
|
存储 缓存 NoSQL
【Redis深度专题】「核心技术提升」探究Redis服务启动的过程机制的技术原理和流程分析的指南(集群功能分析)(一)
【Redis深度专题】「核心技术提升」探究Redis服务启动的过程机制的技术原理和流程分析的指南(集群功能分析)
42 0
|
1月前
|
NoSQL 应用服务中间件 Linux
Redis的内存回收机制
Redis的内存回收机制
25 2
|
1月前
|
缓存 NoSQL Redis
[Redis]——Redis持久化的两种方式RDB、AOF
[Redis]——Redis持久化的两种方式RDB、AOF
|
1月前
|
NoSQL 算法 数据管理
【Redis】Redis配置参数详解:优化过期删除机制
【Redis】Redis配置参数详解:优化过期删除机制
68 0
|
1月前
|
NoSQL 关系型数据库 MySQL
Redis 两种持久化方式 AOF 和 RDB
Redis 两种持久化方式 AOF 和 RDB

热门文章

最新文章