一.redis持久化策略
(一)redis持久化策略说明
说明:redis的数据都保存在内存中,如果断电或者宕机,则内存数据将擦除,导致数据的丢失,为了防止数据丢失,redis内部有持久化机制。
当redis服务器启动时,根据配置文件的持久化要求,进行持久化操作,如果不是第一次启动,则在服务器启动时会根据持久化文件读取指定的持久化文件,实现内存数据的恢复。
(二)RDB模式(Redis DataBase)
特点:
1.RDB模式是默认的持久化操作
2.RDB模式定期持久化,保存的是redis中内存数据的快照,持久化文件占用空间较小
3.RDB模式可能导致内存数据丢失
命令:前提需要在redis客户端执行
save指令:立即持久化,会导致其他操作陷入阻塞
bgsave指令:开启后台运行,以异步的方式进行持久化,不会造成其他操作的阻塞
持久化周期:
save 900 1 900秒内,如果用户执行的1次更新操作,则持久化一次
save 300 10 300秒内,如果用户执行的10次更新操作,则持久化一次
save 60 10000 60秒内,如果用户执行的10000次更新操作,则持久化一次
save 1 1 1秒内,如果用户执行的1次更新操作,则持久化一次 set 阻塞!
持久化文件的路径:dir ./ 在当前的目录中持久化
(三)AOF模式(Append-only file)
特点:
1.AOF模式默认条件下是封闭状态,如果需要开启则需要修改配置文件
2.AOF模式可以实现数据的实时的持久化操作,AOF模式记录的是用户的操作过程
3.只要开启了AOF模式,则持久化的方式以AOF模式为主
配置:
开启AOF持久化方式:appendonly yes
(四)面试题
公司新入职员工对于业务不熟,在生产环境下执行flushall操作命令,如何解决?
处理方式:修改AOF文件中的flushall命令,之后重启即可

(五)持久化总结
1.数据要求不严谨的时候,可以选用RDB模式
2.不允许数据丢失,则选用AOF模式
3.双选,需要搭建主从结构,主机RDB,从机AOF,可以保证业务允许。
(六)配置多重持久化
1.6379当主机,6380当从机
2.6379:rdb模式,6380:aof模式
3.检查默认模式的状态 info replication(复制意)
4.实现主从挂载slaveof 192.168.126.129 6379

5.主从测试
主机中可读可写,从机中只能读
总结: 一般条件下主机采用RDB模式,从机采用AOF模式,效率更高
二.redis内存策略
(一)内存策略说明
redis服务器运行在内存中,数据也在内存中保存. 如果一直往里存,总有一天内存资源不够用,所以需要研究如何优化内存.
(二)LRU算法
维度:T 时间
LRU:least recently used,最近最少使用

(三)LFU算法
维度:引用的次数
LFU:least frequently used

(四)随机算法
随机算法:灭霸的响指
(五)TTL算法
说明:将设定了超时时间的数据提前删除
key1:ttl 100秒
key2:ttl 10秒
先删除key2
2730



被折叠的 条评论
为什么被折叠?



