博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Redis数据库篇 -- 生存时间
阅读量:2428 次
发布时间:2019-05-10

本文共 1265 字,大约阅读时间需要 4 分钟。

实验环境

操作系统: ubuntu-16.04-x64redis版本: 4.0.9

概述

在实际的开发中经常遇到一些有时效的数据,使用关系数据库一般需要一个额外的字段来记录到期时间。在Redis中对key提供了生存时间的支持,到期后Redis会自动删除它。

命令

1.设置生存时间

EXPIRE key secondsPEXPIRE key millisecondsEXPIREAT key timestampPEXPIREAT key milliseconds-timestamp

EXPIRE命令的过期时间单位为秒,返回1表示设置成功,返回0表示设置失败或者或者键不存在。

127.0.0.1:6379> SET key1 testOK127.0.0.1:6379> EXPIRE key1 10(integer) 1127.0.0.1:6379> SET key1 testOK127.0.0.1:6379> DEL key1(integer) 1127.0.0.1:6379> EXPIRE key1 10(integer) 0

PEXPIRE与EXPIRE命令使用上是一样的,唯一的区别是它支持的过期时间单位是毫秒。

EXPIREAT使用Unix时间戳作为第二个参数表示键的生存时间截至时间。

127.0.0.1:6379> SET key1 testOK127.0.0.1:6379> EXPIREAT key1 1527232560(integer) 1127.0.0.1:6379> TTL key1(integer) 18

PEXPIREAT与EXPIREAT的区别是前者的生存时间是毫秒。

2.查看生存时间

TTL keyPTTL key

TTL返回键剩余的生存时间,单位是秒。当键过期后返回-2,没有为键设置生存时间时则返回-1。

127.0.0.1:6379> SET key1 testOK127.0.0.1:6379> EXPIRE key1 10(integer) 1127.0.0.1:6379> TTL key1(integer) 5127.0.0.1:6379> TTL key1(integer) 4127.0.0.1:6379> TTL key1(integer) -2127.0.0.1:6379> set key1 testOK127.0.0.1:6379> TTL key1(integer) -1

3.取消生存时间

PERSIST key

PERSIST用于取消键的过期时间。如果生存时间被成功清楚则返回1,否则返回0。(键不存在或者键本来就是永久的)

127.0.0.1:6379> SET key1 testOK127.0.0.1:6379> EXPIRE key1 10(integer) 1127.0.0.1:6379> PERSIST key1(integer) 1127.0.0.1:6379> PERSIST key2(integer) 0    # key2 不存在

转载地址:http://lgcmb.baihongyu.com/

你可能感兴趣的文章
阿里面试,我挂在了第四轮……
查看>>
C++ 程序员到高级架构师,必须经历的三个阶段
查看>>
和 Java、C# 等语言对比后,Python 简直酷上天了!
查看>>
程序媛到最后,拼的到底是什么?
查看>>
笑死!996 程序员竟然做了这个梦!| 每日趣闻
查看>>
“再见,微软!”
查看>>
ARM 发布新一代 CPU 和 GPU,实现 20% 性能提升!
查看>>
技术引路:机器学习仍大有可为,但方向在哪里?
查看>>
漫画:如何给女朋友解释什么是编译与反编译
查看>>
刷屏了!这篇 Python 学习贴,90% 的程序员都用的上!
查看>>
漫画:如何给女朋友解释什么是适配器模式?
查看>>
程序员又迎来一个好消息! | 每日趣闻
查看>>
Mac 被曝存在恶意漏洞:黑客可随意调动摄像头,波及四百万用户!
查看>>
拒绝与其他码农一致!CSDN定制T让你成为最靓的仔
查看>>
程序员情商低?看完这 4 类程序员我懂了!
查看>>
《长安十二时辰》里你不能不知道的 IT 技术 | 每日趣闻
查看>>
程序员爬取 3 万条评论,《长安十二时辰》槽点大揭秘!
查看>>
一年参加一次就够,全新升级的 AI 开发者大会议程出炉!
查看>>
基于 XDanmuku 的 Android 性能优化实战
查看>>
基于嵌入式操作系统的物联网安全
查看>>