千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > redis设置key过期时间key存在则更新:Redis设置过期时间命令

redis设置key过期时间key存在则更新:Redis设置过期时间命令

来源:千锋教育
发布人:xqq
时间: 2023-07-23 13:26:40 1690090000

Redis是一款高性能键值存储系统,能够支持保存数据、缓存等多种应用场景,特别适用于海量数据的高效处理。Redis键值存储系统跟传统的关系型数据库存储方式有很大的区别。Redis采用的是内存存储,数据可以被存放在内存中,并且支持将数据保存到硬盘上进行持久化存储。Redis支持各种不同的数据结构,如String、Hash、List等。

Redis设置Key过期时间

Redis提供了给key设置过期时间的特性,即在定义key时指定其过期时间,当key的过期时间到期时,Redis会自动将其删除。在实际应用场景中,我们经常需要将某些key设置为一个时限,比如验证码、token等。下面介绍一下在Redis中如何设置key的过期时间。

Redis中针对设置key过期时间有两种方式,它们分别是:1.通过redis-cli工具设置key的过期时间。2.通过编程语言访问Redis API设置key的过期时间。

1.通过redis-cli工具设置key的过期时间通过redis-cli工具设置key的过期时间非常简单,只需要在定义key时加上 EX 参数即可,EX 代表在多少秒后过期。命令格式如下:

> SET key value EX seconds

举个例子,设置 key1 在 60 秒后过期:

> SET key1 "value1" EX 60

在设置过期时间后,通过TTL命令查看指定key的剩余过期时间。TTL意为time to live,表示key的剩余生存时间。命令格式如下:

> TTL key

查看 key1 剩余生存时间:

> TTL key150

2.通过编程语言访问Redis API设置key的过期时间在编程语言中使用 Redis API 设置 key 的过期时间也非常简单,只需要调用相应的函数即可。以下是 Python 代码示例:

pythonimport redis

# 创建 Redis 连接对象r = redis.Redis(host='localhost', port=6379, db=0)

# 设置 key 的值r.set('key1', 'value1')

# 设置 key 的过期时间为 60 秒r.expire('key1', 60)

以上代码设置了 key1 的过期时间为 60 秒,当 key1 过期后就会被自动删除。PS:当设置过期时间的 key 被修改时,它的过期时间也会被重置。

Key存在则更新

在 Redis 中,当我们使用 SET 命令设置一个已经存在的 key 时,该 key 的值就会被更新。例如,我们可以通过下面的命令将 key1 的值修改为 value2:

> SET key1 "value2"

如果我们想要在更新这个 key 的同时设置过期时间,可以使用以下两条命令的组合:

shell# 将 key1 的值设为 value2,并设置过期时间为 60 秒> SET key1 "value2"> EXPIRE key1 60 

以上命令先使用 SET 命令将 key1 的值设置为 value2,然后使用 EXPIRE 命令设置 key1 的过期时间为 60 秒。简单来说,Redis 在 KEY 存在时 SET 进去,就等价于更新这个 KEY 的值,同时更新它的过期时间。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT