

redis 如何实现 [每次访问 key 后自动延长 key 的过期时间]
source link: https://www.v2ex.com/t/802679
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

大佬们 redis 自身有这个实现吗?还是说要自己实现?我用 springboot-redis 的 redisTemplate 的。谢谢!
Saxton 4 小时 47 分钟前
Cloud9527 4 小时 40 分钟前
rationa1cuzz 4 小时 28 分钟前
PiersSoCool 3 小时 51 分钟前
Pipecraft 3 小时 39 分钟前 1
redis 6.2.0 版本新加的 GETEX 就是这个功能,[每次访问 key 后自动延长 key 的过期时间]。
具体看官方文档。redis.io/commands/getex
如果是老版本,不需要用 SET 命令重置时间,用 EXPIRE, EXPIREAT, PEXPIRE 或 PEXPIREAT 会更好些。
如果你的过期时间比较长,访问同一个 key 的频率很高(作为缓存,这个可能性很高),那么每次 GET 一次然后又 EXPIRE 一次,这样调用两次命令有点浪费。可以考虑异步更新过期时间。比如把要更新的 key 先存到内存里,定时更新一次。这样多次 GET,一定时间内只更新一次就可以了。当然这个方法会增加复杂性。性能和复杂性权衡一下,选择用简单的 GET + EXPIRE 方式还是异步方式。
Recommend
-
79
Redis 数据库、键过期的实现
-
74
原文地址:https://www.xilidou.com/2018/03/20/redis-server/ 之前的文章讲解了 Redis 的数据结构,这回就可以看看作为内存数据库,Redis 是怎么存储数据的。以及键是怎么过期的。 阅读这篇文章你将会了解到: Redis 的数据库实现 Redis 键过期的策略
-
20
Linux 中有很多可以查看系统信息如处理器信息、生产商名字、序列号等的命令。你可能需要执行多个命令来收集这些信息。同时,记住所有的命令和他...
-
30
日志文件自动删除功能必不可少,当然你可以让运维去做这事,只是这不地道。而日志组件是一个必备组件,让其多做一件删除的工作,无可厚非。本文就来探讨下 log4j 的日志文件自动删除实现吧。 0. 自动删除配置参考样例: (log4j2.x...
-
7
Python实现HTTPS网站证书过期监控及更新 当前HTTP逐渐被大众所抛弃,HTTPS正在成为互联网上的主流。前段时间我们维护的一个HTTPS证书即将过期,由于多云环境比较复杂,团队小伙伴在替换更新证书的过程中出现疏漏,导致有一个域名证书没有及时...
-
7
运用惰性删除和定时删除实现可过期的localStorage缓存 原创 万猫学社 2022-04-21 08:40:13...
-
5
日前拜读阿牛老师的大作 领导:谁再用定时任务实现关闭订单,立马滚蛋! 发现其方案有若干瑕疵,特此抛砖引玉讨论一二。 在电商、支付等领域,往往会有这样的场景,用户下单后放弃...
-
13
每天自动删除过期备份 首先编写一个简单的Shell脚本DeleteExpireBackup.sh: #!/bin/bash # 修改需要删除的路径 location="/database/backup/" # 删除最后修改时间为30天以前的备份文件夹 find $l...
-
4
UPS退货服务延长至11月1日!12月1日之前自动退差价!-跨境头条-AMZ123亚马逊卖家网址导航 UPS退货服务延长至11月1日!12月1日之前自动退差价...
-
11
Vue学习:实现用户没有登陆时,访问后自动跳转登录页面
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK