分布式缓存redis之持久化

redis可以持久化,当做cache时持久化的意义何在?

持久化的意思就是说服务器重启之后,缓存依然存在,内存类型的缓存,服务器重启后就不存在了。比如使用持久化的方案做登录Session,服务器重启后用户不用再次登录,而一般内存方案需要再次登录。

Redis是一个支持持久化的内存数据库,且数据都是放在内存中的,也就是说Redis需要经常将内存中的数据同步到磁盘来保证持久化(防止数据丢失)。持久化是使用RDB方式或者AOF方式

RDB持久化:可以在指定的时间间隔内生成数据集的时间点快照;

AOF持久化:记录服务器执行的所有写操作命令,并在服务器启动时,通过重新执行这些命令来还原数据集,AOF文件中全部以Redis协议的格式来保存,新命令会被追加到文件的末尾,Redis还可以在后台对AOF文件进行重写,文件的体积不会超出保存数据集状态所需要的实际大小。

Redis还可以同时使用AOF持久化和RDB持久化,在这种情况下,当Redis重启时,它会优先使用AOF文件来还原数据集,因为AOF文件保存的数据集通常比RDB文件所保存的数据集更加完整

RDB

概念

也叫SNAPSHOTTING模式,快照是默认的持久化方式。这种方式是就是将内存中数据以快照的方式写入到二进制文件中,默认的文件名为dump.rdb(如果需要恢复数据,只需将备份文件 (dump.rdb) 移动到 redis 安装目录并启动服务即可)。可以通过配置设置自动做快照持久化的方式。我们可以配置redis在n秒内如果超过m个key被修改就自动做快照,下面是默认的快照保存配置

save 900 1 #900秒内如果超过1个key被修改,则发起快照保存save 300 10 #300秒内容如超过10个key被修改,则发起快照保存

save 60 10000 #60秒内容如超过10000个key被修改,则发起快照保存





  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值