redis的自带VM(虚拟内存)

Redis支持采用VM技术,以达到当数据超过设置的可使用的物理内存的时候能够正常运行。当数据超过物理内存的时候,把一部分数据写入磁盘中的一块空间来代替物理内存。

vm-enabled no                       # VM总开关。是否开启虚拟内存?默认不开启,如果开启请设置为:yes

really-use-vm yes                   # 重复确认开启虚拟内存,可以紧接着上面的添加vm-enabled再手工添加此项

vm-swap-file /tmp/redis.swap  # 默认虚拟内存交换文件的路径

vm-max-memory 0???            # 虚拟内存的大小(redis使用最大内存上限)。当设置为0的时候,其实是所有value都存在于磁盘,起不到高速的内存缓存。一般设为物理内存的60~80%(单位:字节bytes)。

vm-page-size 32                    # swap文件分成了很多的page,设置每个page的最大容量(单位:字节bytes),一个对象可以保存在多个page上面,但一个page上不能被多个对象共享(value对象和page是一对多关系)。

vm-pages 134217728             # 设置swap文件中的page最多数量,采用内存页的方式存储,在磁盘上的每8页要消耗物理内存的1byte

vm-max-threads 4                 # 设置访问swap文件的线程数,最好不要超过机器CPU的核数,如果设置为0,那么所有对swap文件的操作都是串行的,可能会造成比较长时间的延迟。默认值为4

原文地址:https://www.cnblogs.com/martinzhang/p/3414647.html