• redis的一些操作


    清空当前缓存和所有缓存

    Windows环境下使用命令行进行redis缓存清理

    • redis安装目录下输入cmd
    • redis-cli -p 端口号
    • flushdb 清除当前数据库缓存
    • flushall 清除整个redis所有缓存

    在redis安装目录下,右键选择“在终端打开”,如下图:
    在这里插入图片描述

    (base) PS C:\Program Files\Redis> redis-cli -p 6379
    127.0.0.1:6379> flushdb
    OK
    127.0.0.1:6379> flushall
    OK
    127.0.0.1:6379>
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    在这里插入图片描述

    配置内存大小,防止内存饱满

    1、通过在Redis安装目录下的redis.conf配置文件设置内存大小

    maxmemory 4096mb
    
    • 1

    2、通过cmd

    //设置Redis最大占用内存大小为100M
    127.0.0.1:6379> config set maxmemory 4096mb
    //获取设置的Redis能使用的最大内存大小
    127.0.0.1:6379> config get maxmemory
    
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述

    设置内存淘汰策略

    • noeviction策略:内存空间达到maxmemory时,不会淘汰数据,有新写入时会返回错误。
    • volatile-ttl策略:针对设置了过期时间的键值对,根据过期时间的先后进行修改,越早过期的越先被删除。
    • volatile-random策略:在设置了过期时间的键值对中,进行随机删除。
    • volatile-lru策略:使用LRU算法筛选设置了过期时间的键值对,进行删除。
    • volatile-lfu策略:使用LFU算法筛选设置了过期时间的键值对,进行删除。
    • allkeys-random策略:在所有键值对中随机选择并删除数据。
    • allkeys-lru策略:使用LRU算法在所有数据中进行筛选并删除数据。
    • allkeys-lfu策略:使用LFU算法在所有数据中进行筛选并删除数据。

    当使用volatile-lru、volatile-random、volatile-ttl这三种策略时,如果没有key可以被淘汰,则和noeviction一样返回错误
    设置方法

    127.0.0.1:6379> config set maxmemory-policy allkeys-lru
    
    • 1

    查看策略

    127.0.0.1:6379> config get maxmemory-policy
    
    • 1

    键过期机制

    一个键过期机制——给key设置一个过期时间,一旦超过过期时间,这个key就会被被删除,内存将被回收。

    设置键值时,EXPIRE单位是秒,PEXPIRE单位是毫秒
    在Redis中,可以使用以下命令来设置键的过期时间:

    1. EXPIRE key ttl:设置键在ttl秒后过期。

    例如,要设置一个名为“username”的键在60秒后过期,可以执行以下命令:

    EXPIRE username 60
    
    • 1

    如果设置成功,将返回1;如果键不存在或者设置失败,将返回0。

    1. PEXPIRE key milliseconds:设置键在毫秒后过期。

    例如,要设置一个名为“email”的键在1000毫秒后过期,可以执行以下命令:

    PEXPIRE email 1000
    
    • 1

    如果设置成功,将返回1;如果键不存在或者设置失败,将返回0。

    1. EXPIREAT key timestamp:设置键在某个时间戳(精确到秒)之后过期。

    例如,要设置一个名为“password”的键在2023年1月1日0点1分过期,可以执行以下命令:

    EXPIREAT password 1672752660
    
    • 1

    如果设置成功,将返回1;如果键不存在或者设置失败,将返回0。

    1. PEXPIREAT key millisecondsTimestamp:设置键在某个时间戳(精确到毫秒)之后过期。

    例如,要设置一个名为“access_token”的键在2023年1月1日0点1分10秒后过期,可以执行以下命令:

    PEXPIREAT access_token 1672752670000
    
    • 1

    如果设置成功,将返回1;如果键不存在或者设置失败,将返回0。

    需要注意的是,当键已经存在时,才允许设置过期时间。如果键不存在,使用上述命令将返回0。此外,当键过期后,可以使用TTL和PTTL命令来查看该键的剩余存活时间。如果键不存在或者未设置过期时间,将返回-1或-2。
    TTL单位是秒,PTTL单位是毫秒

    127.0.0.1:6379> TTL KEY
    127.0.0.1:6379> PTTL KEY
    
    • 1
    • 2
  • 相关阅读:
    Cron表达式介绍
    软件开发过程中的办公文档使用
    Django 安装指南
    2022年最新河北建筑八大员(机械员)模拟考试题库及答案
    Hadoop大数据应用:Yarn 节点实现扩容与缩容
    智慧城市井盖选择,智能井盖传感器特点介绍
    Django+Vue项目创建 跑通
    C++动态内存管理
    面试--mysql基础
    Autosar MCAL-ADC详解(二)-基于Tc27x的cfg软件
  • 原文地址:https://blog.csdn.net/hhhhhhhhhhwwwwwwwwww/article/details/134530831