redis 下key的过期时间详解 :expire - jiorry - ITeye博客


本站和网页 https://www.iteye.com/blog/jiorry-961172 的作者无关,不对其内容负责。快照谨为网络故障时之索引,不代表被搜索网站的即时页面。

redis 下key的过期时间详解 :expire - jiorry - ITeye博客
首页
资讯
精华
论坛
问答
博客
专栏
群组
下载
资源
搜索
您还未登录!
登录
jiorry
浏览:
267794 次
性别:
来自:
兰州
最近访客
更多访客>>
wangwen135
sevenjike
fanying
u010650386
博主相关
博客
微博
相册
收藏
留言
关于我
文章分类
全部博客 (51)
posgresql (1)
linux (3)
git (3)
erlang (3)
flex (1)
actionscript (2)
php (2)
taobao (1)
nginx (1)
jquery (1)
golang (1)
社区版块
我的资讯 (
0)
我的论坛 (
79)
我的问答 (
10)
存档分类
2014-03
3)
2013-06
1)
2013-05
1)
更多存档...
最新评论
文昌平蓝杰:
tywo45 写道请教一下:expire设置的超时是从key创 ...
redis 下key的过期时间详解 :expire
lovme_forever:
说的不是很详细,设置expire 只对 redis的大key有 ...
redis 下key的过期时间详解 :expire
tywo45:
请教一下:expire设置的超时是从key创建时开始计时的。如 ...
redis 下key的过期时间详解 :expire
风云无浪:
写的可以啊,为啥这么多人踩呢。。。除了set和del还有啥会使 ...
redis 下key的过期时间详解 :expire
helloqidi:
谢谢分享!
redis 下key的过期时间详解 :expire
jiorry
redis 下key的过期时间详解 :expire
Redismemcached
阅读更多
memcached 和 redis 的set命令都有expire参数,可以设置key的过期时间。但是redis是一个可以对数据持久化的key-value database,它的key过期策略还是和memcached有所不同的。梳理,整理如下:
redis通过expire命令来设置key的过期时间。
语法:redis.expire(key, expiration)
1. 在小于2.1.3的redis版本里,只能对key设置一次expire。redis2.1.3和之后的版本里,可以多次对key使用expire命令,更新key的expire time。
2. redis术语里面,把设置了expire time的key 叫做:volatile keys。 意思就是不稳定的key。
3. 如果对key使用set或del命令,那么也会移除expire time。尤其是set命令,这个在编写程序的时候需要注意一下。
4. redis2.1.3之前的老版本里,如果对volatile keys 做相关写入操作(LPUSH,LSET),和其他一些触发修改value的操作时,redis会删除 该key。 也就是说 :
redis.expire(key,expiration);
redis.lpush(key,field,value);
redis.get(key) //return null
redis2.1.3之后的版本里面没有这个约束,可以任意修改。
redis.set(key,100);
redis.expire(key,expiration);
redis.incr(key)
redis.get(key)
//redis2.2.2 return 101; redis<2.1.3 return 1;
5. redis对过期键采用了lazy expiration:在访问key的时候判定key是否过期,如果过期,则进行过期处理。其次,每秒对volatile keys 进行抽样测试,如果有过期键,那么对所有过期key进行处理。
end------------------
11 顶6 踩
分享到:
coreseek4.0 pgsql安装遇到的问题
Powerdesigner 管理外键依赖
2011-03-14 14:19
浏览 164034
评论(6)
分类:数据库
查看更多
评论
6 楼
文昌平蓝杰
2014-12-17
tywo45 写道请教一下:expire设置的超时是从key创建时开始计时的。如果想像session超时那样,从上一次访问开始计时,redis是否支持?不知道你老人家解决了没有,但是这个功能可以用,如果没过期,重新set一下来解决的啊,redis有控制原子操作的 函数,你试试去
5 楼
lovme_forever
2014-04-28
说的不是很详细,设置expire 只对 redis的大key有效吧 ,,他这个是有不同的存储对象的,,string ,list,set ,hash大概这几种,这些对象 里面又可以存放对象,比如hash,想对hash中某一行存储设置expire就不行了吧
4 楼
tywo45
2014-04-07
请教一下:expire设置的超时是从key创建时开始计时的。如果想像session超时那样,从上一次访问开始计时,redis是否支持?
3 楼
风云无浪
2013-01-22
写的可以啊,为啥这么多人踩呢。。。除了set和del还有啥会使expire失效呢?另外如果对大量到key设置expire3600000,会影响性能不?
2 楼
helloqidi
2012-09-25
谢谢分享!
1 楼
月夜兔
2011-11-14
,正是我需要的,谢谢!!!
发表评论
您还没有登录,请您登录后再发表评论
相关推荐
redis命令集合,redis命令详解
EXPIRE设置某个key的过期时间(秒),(EXPIRE bruce 1000:设置bruce这个key1000秒后系统自动删除)注意:如果在还没有过期的时候,对值进行了改变,那么那个值会被清除。 TTL查找某个key还有多长时间过期,返回时间秒 ...
Redis集群管理工具Redis::Sentinel.zip
Redis-sentinel是Redis的作者antirez完成的,因为Redis实例在各个大公司的应用,每个公司都需要一个Redis集群的管理工具,被迫都自己写管理工具来管理Redis集群,antirez考虑到社区的急迫需要(详情),花了几个星期写...
监听redis过期key,做对应业务处理
1.springboot集成redis,并监听redis过期key做相应的业务处理
Using Redis As a Time Series Database: Why and How
Using Redis As a Time Series Database: Why and How
Redis.5.0.8 windows 版本,免安装启动 redis
使用 Cygwin 编译 redis 5.0.8,解决windows 没有高版的 redis. redis 官网:https://redis.io/ Cygwin 官网:https://cygwin.com/ 编译参考:https://www.cnblogs.com/LUA123/p/11447163.html 编译异常解决参照:...
Redis中键值过期操作示例详解
Redis 中设置过期时间主要通过以下四种方式: expire key seconds:设置 key 在 n 秒后过期; pexpire key milliseconds:设置 key 在 n 毫秒后过期; expireat key timestamp:设置 key 在某个时间戳(精确到秒...
Redis_Key操作命令
Redis_Key操作命令,Redis主要用于数据队列存储
redis.conf配置文件详解
redis.conf配置文件详解
riemann-redis-keys:监控redis key sizelength并报告给riemann
黎曼 Redis 密钥 一个基于简单redis riemann客户端支持上报以下key类型的大小/基数/长度: 列表放zset 散列细绳安装gem install riemann-redis-keys用法riemann-redis-keys --redis-key " key:one " --redis-key " ...
redis-6.2.5 配置文件redis.conf
redis官方docker镜像时没有redis.conf文件的,如果想设置redis以daemon方式启动,需要将这个配置文件挂载进容器中,以这个配置文件启动。
redis中key的设置方法步骤
Redis SET命令用于设置给定key的值。如果key已经存储其他值,SET就覆写旧值,且无视类型。 redis SET命令基本语法如下: redis 127.0.0.1:6379> SET KEY_NAME VALUE 返回值: 在Redis2.6.12以前版本,SET命令总是...
wallproxy Errno 10054
wallproxy Errno 10054 解决方法
Redis集群下过期key监听的实现代码
在使用redis集群时,发现过期key始终监听不到。网上也没有现成的解决方案。于是想,既然不能监听集群,那我可以建立多个redis连接,分别对每个redis的key过期进行监听。以上做法可能不尽人意,目前也没找到好的解决...
redis.conf Redis配置文件下载
redis.conf Redis配置文件 下载 redis.conf 配置详解 Redis配置文件redis.conf 详解1.基本配置内存单位的表示# 1k => 1000 bytes# ...Redis 的详细介绍Redis 的下载地址
Redis3_win.zip:一款高性能的NOSQL系列的非关系型数据库
redis是一款特殊的数据库软件,它是...Redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)
Redis+可视化工具下载
在redis的安装目录下,找到 redis-cli.exe //双击启动 auth 123456 //验证密码 redis有5种数据类型:string、list、hash、set、zset 不同的数据类型查看值得方式不同。 keys * :获取所有key string:get key...
Redis-begin.zip_Redis java_adodb REDIS_java redis_redis_site:www
在很多时候,人们只是将Redis视为Key/Value数据库服务器,然而事实并非如此,在目前的版本中,Redis除了Key/Value之外还支持List、Hash、Set和Ordered Set等数据结构,因此它的用途也更为宽泛。对于此种误解,Redis...
Redis清理过期key的方法.doc
在Redis中,对于过期key的清理主要有惰性清除,定时清理,内存不够时清理三种方法,下面我们就来具体看看这三种清理方法。
Redis热点key及大key解决方案.docx
Redis热点key及大key解决方案.docx
keyv-redis:用于Keyv的Redis存储适配器
安装npm install --save keyv ioredis @microlink/keyv-redis用法const Keyv = require ( 'keyv' )const keyv = new Keyv ( 'redis://user:pass@localhost:6379' ) 任何有效的选项都将直接通过。 const keyv = new ...
Global site tag (gtag.js) - Google Analytics