• Redis 内存大小限制


    查看当前运行的 Redis 所使用的配置文件

    windows

    直接打开任务管理器查看

    linux

    ps -ef | grep redis

    取消持久化

    先删除原有的 dump.rdb,不然启动后会加载

    # 指定在多长时间内,有多少次更新操作,就将数据同步到数据文件,可以多个条件配合
    # 满足以下条件将会同步数据:
    # 900秒(15分钟)内有1个更改
    # 300秒(5分钟)内有10个更改
    # 60秒内有10000个更改
    # 可以把所有“save”行注释掉,这样就取消同步操作了
    #save ""
    #save 900 1
    #save 300 10
    #save 60 10000
    
    # 如果用户开启了RDB快照功能,那么在redis持久化数据到磁盘时如果出现失败,默认情况下,redis会停止接受所有的写请求
    stop-writes-on-bgsave-error yes
    
    # 指定存储至本地数据库时是否压缩数据,默认为yes,Redis采用LZF压缩,如果为了节省CPU时间,可以关闭该选项,但会导致数据库文件变的巨大
    rdbcompression yes
    
    # 在存储快照后,可以让redis使用CRC64算法来进行数据校验,这样做会增加大约10%的性能消耗,如果希望获取到最大的性能提升,可以关闭此功能
    rdbchecksum yes
    
    # 转储数据库的文件名,默认值为dump.rdb
    dbfilename dump.rdb
    
    # 工作目录,指定本地数据库存放目录,文件名由上一个dbfilename配置项指定,这里只能指定一个目录,不能指定文件名
    dir ./

    限制最大内存

    windows 的 maxmemory-policy 策略可能会少一些

    # 指定Redis最大内存限制,Redis在启动时会把数据加载到内存中,达到最大内存后,Redis会先尝试清除已到期或即将到期的Key,移除规则可以通过maxmemory-policy来指定,当处理后,仍然到达最大内存,将无法再进行写入操作,但仍然可以进行读取操作
    # Redis新的vm机制,会把Key存放内存,Value会存放在swap区
    # maxmemory <bytes>
    # 3GB = 3*1024*1024*1024=3221225472
    maxmemory 3221225472
    
    # 当内存使用达到最大值时,redis使用的清除策略:
    # LRU表示最近最少使用,LFU意味着最少使用
    # volatile-lru -> 利用LRU算法移除设置过过期时间的key
    # allkeys-lru -> 利用LRU算法移除任何key
    # volatile-lfu -> 利用LFU算法移除设置过过期时间的key
    # allkeys-lfu -> 利用LFU算法移除任何key
    # volatile-random -> 移除设置过过期时间的随机key
    # allkeys-random -> 移除随机key
    # volatile-ttl -> 移除即将过期的key(minor TTL)
    # noeviction -> 不移除任何key,只是返回一个写错误 ,默认选项
    maxmemory-policy noeviction
    
    # LRU,LFU和最小TTL算法不是精确的算法,而是近似算法(为了节省内存),默认Redis将检查五个键并选择最近使用的键,可以配置指令更改样本大小获得速度或精度。默认值5会产生足够好的结果,10非常接近真实的LRU但耗CPU,3更快但不是很准确。
    maxmemory-samples 5

    重启服务

    windows

    net stop redis 
    net start redis

    linux

    systemctl restart redis

    http://www.redis.cn/topics/config.html

    http://www.redis.cn/topics/persistence.html

  • 相关阅读:
    Sql 中取小数点后面两位小数
    常用SQL时间格式SQLServer中文版的默认的日期字段datetime格式是yyyy-mm-d
    sql server 2008 R2连接失败 错误:18456
    SQl server 2008 附加数据库失败,错误:5120
    sql server 2008 R2无法连接127.0.0.1报错 Server error:40(错误:53)
    SQL Server 2008的MSSQLSERVER 请求失败或服务未及时响应
    查看系统事件日志
    ssh-keygen公钥进行免登
    docker命令
    maven将依赖的jar包复制到指定位置
  • 原文地址:https://www.cnblogs.com/jhxxb/p/13677348.html
Copyright © 2020-2023  润新知