Redis之最大内存置换策略
来源:互联网 发布:word表格数据排序 编辑:程序博客网 时间:2024/05/29 07:33
0.前言
Redis默认最大内存大小是应用程序可访问的内存大小, 32位windows下是2GB, linux下是3GB. 64位下可以访问的内存为2^64字节, Redis提供了maxmemory字段来限制使用的最大内存. 既然提供了最大内存限制, 那么当我们程序达到最大值时, Redis使用了多种策略进行置换.Redis建议最大内存设置为物理内存的一半。
1.Redis置换策略字段maxmemory-policy
volatile-lru : 对具有生存周期的key进行LRU算法置换.
volatile-random : 对具有生存周期的key进行随机置换.
volatile-ttl : 对具有生存周期的key随机进行抽样, 置换出抽样中生存周期最短的.
allkeys-lru : 对整个db进行LRU算法置换
allkeys-random : 对整个db进行随机置换
noeviction : 不进行置换
volatile-random和allkeys-random策略, Redis直接在相应的数据集上随机并置换.
volatile-ttl需要抽样, 抽样的大小由maxmemory-samples控制, 默认maxmemory-samples为5, 抽样越大算法精确度越高,但是消耗也越大.
volatile-lru和allkeys-lru是对抽样的数据中选出最近最久未使用的Key置换出去.这里抽样的大小默认是16, 如果我们设置maxmemory-samples并且大于16的话, 抽样值和最大的保持一致.Redis设置了一个可置换池, 大小为16, 每次先进行抽样, 抽样之后与置换池中的数据进行比较, 选出最近最久未使用的16个Key放入置换池中, 从置换池中再选择一个Key进行置换.
转:http://www.cnblogs.com/ourroad/p/4912365.html
- Redis之最大内存置换策略
- redis 置换策略
- Redis内存节省策略
- Redis内存分配策略
- redis最大缓存设置策略
- redis内存预分配策略
- 内存管理之页面置换算法
- 操作系统页面置换算法与redis的内存淘汰机制
- 设置Redis最大占用内存
- 设置Redis最大占用内存
- 虚拟内存的置换策略
- redis(5)、redis最大缓存设置策略
- 内存页面置换算法之先进先出(java 版)
- linux学习(14)内存置换空间(swap)之建置
- 操作系统实验——内存管理之页面置换算法
- 第八章 内存置换空间(swap)之建置
- 【操作系统】 置换策略模拟实现
- 分治策略之最大子数组问题
- TomCat服务器闪退问题
- Linux Make
- poj 2411 Mondriaan's Dream(状态压缩dp)
- 使用 Math 类操作数据
- spark学习笔记:构建独立应用并提交运行
- Redis之最大内存置换策略
- Deep CNNs for Diabetic Retinopathy Detection笔记
- 【知了堂学习笔记】JSTL的简单介绍
- Process.waitFor()的返回值含义
- P1102 A-B数对
- poj2386-lak counting
- LeetCode31. Next Permutation
- linux命令--kill
- Java_21 数据输入/输出流