`

Redis 键的生存周期

 
阅读更多

变量在设置之后是一直存在的,直到使用命令清除

而有时需要变量存活一定的时间,到期后redis自动清除掉,而不是手工清理,这种情况下可以使用expire命令

expire key 时间(单位:秒)//指定变量的生存周期为多少秒

TTL key //查看变量的剩余生存周期时间,如果变量未指定生存周期(永久存在)则返回-1,如果变量不存在则返回-2

 

PERSIST key//使变量的生存周期失败,变为永久存在的

 

PERSIST命令之外,使用SET或GETSET命令为键赋值也会同时清除键的生存时间

localhost:6379> del index //删除index变量
(integer) 0
localhost:6379> ttl index//不存在变量返回-2
(integer) -2
localhost:6379> set index 1//设置index变量
OK
localhost:6379> expire index 30//设置index 变量生命周期为30秒
(integer) 1
localhost:6379> ttl index//查看变量生命周期剩余时间
(integer) 27
localhost:6379> persist index//持久化变量,生命周期为永久
(integer) 1
localhost:6379> ttl index//查看index 生命周期为-1(永久)
(integer) -1
localhost:6379> expire index 30//设置index 变量生命周期为30秒
(integer) 1
localhost:6379> ttl index//30秒之后变量消失
(integer) -2
localhost:6379> exists index//变已经不存在了
(integer) 0

 

分享到:
评论

相关推荐

    redis常用文档(自己总结的)

    ### Redis键操作 #### 基础操作 - `del key`:删除键`key`。 - `exists key`:检查键`key`是否存在。 - `set key value`:设置键`key`的值为`value`。 - `get key`:获取键`key`的值。 - `keys pattern`:查找匹配...

    Redis命令参考手册完整版.pdf

    通过上述命令,我们不仅可以对Redis进行简单的数据操作,还能进行键的生命周期管理。在实际应用中,合理使用这些基础命令对于维护Redis数据库的性能至关重要。例如,在一个高并发的场景下,可以使用DEL命令来快速...

    redis+mysql使用学习

    - **TTL(Time To Live)**:为键设置生存时间,过期后自动删除,避免无限期占用内存。 2. **Java整合Redis** - **Jedis**:Java社区广泛使用的Redis客户端库,提供丰富的API进行键值操作。 - **Lettuce**:另一...

    Redis命令参考手册完整版

    这在需要控制键的生命周期时非常有用: ```redis redis> SET key value EX 10 # 设置 key 的生存时间为 10 秒 OK redis> TTL key (integer) 10 ``` 以上只是 Redis 命令的一部分,实际上 Redis 提供了更多高级功能...

    Redis帮助类DLL源码

    6. 键生命周期管理:提供对Redis键的TTL(生存时间)操作,以及过期策略的设置。 `packages`文件夹则可能包含了项目所依赖的第三方库,如StackExchange.Redis或其他辅助工具包。 总的来说,这个"Redis帮助类DLL...

    Redis中键的过期删除策略深入讲解

    Redis还支持不同类型的TTL(生存时间),如 `EXPIRE`、`PEXPIRE` 等,它们在底层都是通过将键与一个整数过期时间关联来实现的。这使得Redis能够灵活处理不同单位(秒或毫秒)的过期时间。 总的来说,Redis的过期...

    redis中文文档整理

    ### Redis中文文档整理知识点 #### 一、概述 Redis(Remote Dictionary Server)是一款开源的、高性能的...此外,对于键的生命周期管理(例如TTL和PTTL命令),可以有效地控制数据的有效时间,避免不必要的资源占用。

    redis如何删除过期数据.rar

    2. **检查过期状态**:使用 `TTL` 或 `PTTL` 命令查询键的剩余生存时间,如果返回值是负数,表示键已过期;如果返回值是 0,表示键没有设置过期时间;如果返回的是正数,那么键还有相应的时间才会过期。 3. **删除...

    基于Java的使用Redis存放Session RedisManager.zip

    Redis提供了多种过期策略,例如`EXPIRE`命令用于设置键的生存时间。在本项目中,可以设置Session的生命周期,当达到该期限时,Redis会自动删除对应的Session键值对。此外,还可以通过`TTL`命令检查键的剩余存活时间...

    大家都应该知道的Redis过期键与过期策略

    在 Redis 中,过期键机制是管理键生命周期的关键特性,允许我们设置键的生存时间(TTL,Time To Live)或过期时间,以确保数据在特定时间后自动删除。本文将深入探讨Redis的过期键与过期策略,帮助你更好地理解和...

    Redis Disktop manager 0.98最新版

    1. **TTL命令**:查看键的生存时间,用于管理数据生命周期。 2. **EXPIRE命令**:设置键的过期时间,自动清理不再需要的数据。 3. **SCAN命令**:用于迭代数据库中的键,避免全库扫描带来的性能影响。 4. **Pipeline...

    Redis面试题.pdf

    - **Volatile-TTL**:仅淘汰设置了过期时间的数据,并按剩余生存时间最短的原则淘汰。 - **Volatile-RANDOM**:仅淘汰设置了过期时间的数据,随机淘汰。 #### 19. 如何在Java项目中使用Redis作为缓存?请说明Java...

    李兴华 Redis开发实战 2023最新视频教程 下载 因为太大存百度云盘2.zip

    4. 键(Key)的生命周期管理:掌握过期策略、TTL(Time To Live)和 PTTL(Persistence Time To Live)等,以及如何有效地管理键的生存周期。 5. 复制与主从同步:学习如何设置 Redis 主从复制,实现数据冗余和高...

    使用Redis存放Session RedisManager

    RedisManager可能有一个方法`setSessionExpireTime(int seconds)`来设定Session的生命周期。 8. **性能优化** 为了提高性能,可以考虑使用Redis的发布订阅功能进行Session事件通知,例如,当一个Session被创建、...

    基于Redis实现分布式锁以及任务队列

    1. Redis分布式锁的核心是`setnx()`命令,它用于设置键值对,但如果键已存在,则返回失败。在分布式锁的实现中,通常会为锁设置一个超时时间,以防锁意外丢失。例如,使用`Lock:order`作为锁的标识名,通过`setnx()`...

    如何使用Redis保存用户会话Session详解

    在Redis中,由于我们设置了键的过期时间,这一操作可以忽略,因为Redis会自动清理过期的键。 接下来,我们需要在PHP配置文件`php.ini`中将Session的存储处理器改为Redis。修改`session.save_handler`的值为`redis`...

    Redis上实现分布式锁以提高性能的方案研究

    1. **锁的自动释放**:为了避免因异常或其他原因导致锁无法手动释放,Redis提供了`EXPIRE`命令设置键的生存时间(TTL,Time To Live)。在获取锁成功后,立即设置一个较短的TTL,当超时后,Redis会自动删除键,从而...

    redis实现计数器-防止刷单方法介绍

    计数器是 Redis 中的一个基本操作,通过 `INCR` 命令可以原子性地增加一个键的数值。例如,当你想限制接口的请求频率,如每秒不超过200次,可以使用 Redis 来记录每秒内的请求数。每次请求到达时,使用 `INCR` 命令...

Global site tag (gtag.js) - Google Analytics