网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

Redis中内存溢出问题和持久化方法

一、内存溢出问题

解决办法

成都创新互联公司是一家专注于成都做网站、成都网站制作、成都外贸网站建设与策划设计,惠安网站建设哪家好?成都创新互联公司做网站,专注于网站建设十多年,网设计领域的专业建站公司;建站业务涵盖:惠安等地区。惠安做网站价格咨询:028-86922220

  1. 设置key的过期时间 2. 按需求使用8种数据淘汰策略

  2. volatile-lru(Least Recently Used):从已设置过期时间的数据集中挑选最近最少使用的数据淘汰

  3. volatile-lfu(Least Frequently Used):从已设置过期时间的数据集中挑选一段时间内使用频率最少的数据淘汰

  4. volatile-ttl(Time To Live):从已设置过期时间的数据集中挑选将要过期的数据淘汰

  5. volatile-random:从已设置过期时间的数据集中随机选择数据淘汰

  6. allkeys-lru:从数据集中挑选最近最少使用的数据淘汰

  7. allkeys-lfu:从所有Keys中挑选一段时间内使用频率最低的数据淘汰

  8. allkeys-random:从数据集中随机选择数据淘汰

  9. no-envicition(驱逐):禁止驱逐数据,针对写操作,返回错误信息(不采用任何淘汰策略,默认即此配置)

Redis中内存溢出问题和持久化方法

二、持久化方法

方式一:RDB 简介

  • RDB:redis Database(默认持久化机制,默认文件名dump.rdb)

  • 有两个功能函数rdbSave(生成RDB文件)和rdbLoad(从文件加载到内存)

优点

  1. 快照保存数据极快,还原数据极快

  2. 适用于灾难备份

缺点

  1. 小内存及其不适合使用

  2. 符合快照条件才会进行快照,意外宕机会丢失最后一次快照后的所有修改

*快照条件**

  1. Redis服务器正常关闭:./bin/redis-cli shutdown

  2. 配置文件中设置的条件
  • save 900 1 //每900秒(15分钟)至少1个key发生变化,产生快照

  • save 300 10 //每300秒(5分钟)至少10个key发生变化,产生快照

  • save 60 10000 //每60秒(1分钟)至少10000个key发生变化,产生快照

Redis中内存溢出问题和持久化方法

方式二:AOF 原理简介

  1. redis会将每一个收到的命令都通过write函数追加到文件中(默认是appendonly.aof), 当redis重启时会通过重新执行文件中保存的“写命令”来在内存中重建整个redis数据库中的内容

Redis中内存溢出问题和持久化方法

2. 每当执行服务器(定时)任务或者函数时flushAppendOnlyFile 函数都会被调用, 这个函数执行以下两个工作:

  • WRITE:根据条件,将 aof_buf 中的缓存写入到 AOF 文件

  • SAVE:根据条件,调用 fsync 或 fdatasync 函数,将 AOF 文件保存到磁盘中

优点

持久化比RDB更好,不会丢失任何的修改

缺点

  • 持久化文件会变的越来越大

  • 重复命令很多(例如:调用100次 “incr dcl" 命令,则文件中必须保存100条“incr dcl"命令记录,但是其中的99条记录都是重复的)

网站栏目:Redis中内存溢出问题和持久化方法
文章路径:http://bjjierui.cn/article/iigohe.html

其他资讯