社区
高性能WEB开发
帖子详情
redis可以自动刷新缓存吗
liuhc10
2017-08-31 09:04:59
访问只读库做接口开发。
用redis做缓存,用户访问自动缓存数据。
但是这样子有不少缺点,1,没缓存用户访问接口的时候比较慢。2,缓存失效后同时请求数据库压力过大。
redis有这种功能:当缓存过期或没缓存的时候自动执行,将数据缓存好,而不是靠用户来触发。
quratz定时任务这种实现模式的话我觉得还是不太好,请问各位大神有其它的方法吗
...全文
13272
26
打赏
收藏
redis可以自动刷新缓存吗
访问只读库做接口开发。 用redis做缓存,用户访问自动缓存数据。 但是这样子有不少缺点,1,没缓存用户访问接口的时候比较慢。2,缓存失效后同时请求数据库压力过大。 redis有这种功能:当缓存过期或没缓存的时候自动执行,将数据缓存好,而不是靠用户来触发。 quratz定时任务这种实现模式的话我觉得还是不太好,请问各位大神有其它的方法吗
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
26 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zgycsmb
2019-06-26
打赏
举报
回复
可以在配制文件中设置缓存时间的。
技术煜
2018-08-30
打赏
举报
回复
1
可以用Timer来做,设置更新频率 public static void timer() { Timer timer = new Timer(); timer.scheduleAtFixedRate(new TimerTask() { public void run() { System.out.println("-------设置redis缓存数据,失效时间为60秒--------"); } },0, 50*1000); // 延迟0毫秒开始执行,每50秒执行一次更新Redis。 }
田小瘦
2018-08-23
打赏
举报
回复
好想法啊,可以给redis打个电话发个短信什么的? 不行的话,也不想手动触发的,就用个定时器吧.建议还是手动触发, 只是在手动的时候做一个优化处理,
赵王爷
2018-08-06
打赏
举报
回复
我记得一篇文章说过,可以让redis永不过期,然后定时刷新,前提是在业务能接受的范围。
hahaliu005
2018-08-06
打赏
举报
回复
1. 缓存数据在过期时间,不过过期时间是随机的一个时间段内的,这样所有缓存就不会在同一时间失效造成压力
2. 永久缓存数据至redis,所有逻辑均从redis中读取,使用定时任务或一些数据库的更新事件回调对数据进行更新,
新技术追求者
2018-07-01
打赏
举报
回复
最好的办法是专门有一个定时的管理任务,那你需要定时更新的数据都放在定时的任务里,这里不管你有没有缓冲,他都会去定时的往你的redis中取更新任务,redis只是一个存储数据的地方,其实也是个DB,redis服务端是自带自动更新的功能,你可以取了解下!
幽饮烛
2018-06-21
打赏
举报
回复
本来想回复一下,发现是17年的贴。
comeoncomputer
2018-06-04
打赏
举报
回复
为什么要自动刷新缓存呢 如果缓存数据为空设置缓存不就好了 比如你的key:test 缓存数据为7天,到期之后你的test为空了,如果有访问为空设置缓存不就有缓存了
weixin_41670939
2018-05-28
打赏
举报
回复
建议手动更新来及时刷新
我惠依旧
2018-05-23
打赏
举报
回复
热点数据缓存时间放长点,每次访问都重新刷新缓存时间;非热点数据时间就慢点,访问时也刷新个缓存时间;缓存失效也只是访问一次数据库(理想状态,非理想状态也不会太多次),再次访问就已经是缓存里的数据了。
a_king
2018-05-13
打赏
举报
回复
应该是通过程序来刷新REDIS里面的数据
yanbingwei86
2018-02-25
打赏
举报
回复
楼主想多了 redis只是个内存db,想存什么数据肯定是你程序写进去的。不管是被动还是主动,建议被动方式。这种ms级别的操作还会有什么性能问题,你应该是rt估计的有问题吧。拍脑袋的问题吧
哈希塞特
2018-02-24
打赏
举报
回复
那你还有设置过期时间的必要吗? 如果数据库改变再更新缓存,根本不要过期时间啊
raymond_geng
2017-11-13
打赏
举报
回复
楼主这个需求不太合理,缓存不只是没有了和要过期了才需要刷新,里面数据变了就要刷新的。先放任不管任由缓存自行管理,没有这种机制的。 ”同时请求数据库压力过大“,如果出现这种情况,那是设计时候就没设计好,要不然不会出现这个情况的 北京JAVAQQ群 103503138,里面有猎头、人资、技术大牛,欢迎加群交流
NewshiJ
2017-11-13
打赏
举报
回复
redis里面不是可以设置key的时间嘛,这个具体怎么样有没有大神来介绍一下
General-M
2017-11-12
打赏
举报
回复
可以看下redis的keyspace
Kerwin Ma
2017-11-07
打赏
举报
回复
redis可以设置缓存时间,过期或者更新后需要重新去缓存,#7说的做定时器 不知道好不好使,可以试一下。
老廉颇尚能饭否
2017-11-07
打赏
举报
回复
底层源码改造一哈
吉吉g王
2017-11-06
打赏
举报
回复
还不如 先查redis 如果redis没有 去查库 如果库里存在 那么再存redis 不存在的话 就返回不存在
Seven丨
2017-11-01
打赏
举报
回复
做个定时器,去触发执行redis的方法
加载更多回复(6)
如何实现
Redis
缓存
自动
刷新
?(全面指南 + 实战方案)
Redis
缓存
自动
刷新
策略指南 本文全面介绍6种
Redis
缓存
自动
刷新
策略,确保
缓存
与源数据一致性。核心策略包括: TTL过期+被动
刷新
:简单通用,设置随机抖动防雪崩 定时任务
刷新
:适合静态数据,通过Cron定期更新 写时失效:数据库更新时主动删除
缓存
监听源变更(CDC):通过Debezium+Kafka实现高实时性 主动探测:轮询检查数据变更,适合小数据集 懒加载+预热:结合首次访问加载和启动预加载 文章还提供Logstash插件集成示例和生产级优化建议,推荐组合使用多种策略实现最佳平衡。
Spring Boot
Redis
- Cache 设置有效时间和
自动
刷新
缓存
,注解中设置
自动
刷新
时间
Spring Boot
Redis
- Cache 设置有效时间和
自动
刷新
缓存
,自注解中设置
自动
刷新
时间。 前言 这篇文章主要对小伙伴使用Spring
redis
-cache 进行补充,spring
redis
-cache是一个通用的解决方案, 虽然Spring
redis
-cache已经很强大了,但是面对程序员千奇百怪的想法还是有些力不从心。好了废话已经说完了,下面开始动真格的了。 问题 在我们使用spring
redis
-cache 做
缓存
的时候,往往会设置一个
刷新
提前量。举个栗子你设置了
缓存
失效期为五
springboot
redis
-cache
自动
刷新
缓存
这篇文章是对上一篇 spring-data-
redis
-cache 的使用 的一个补充,上文说到 spring-data-
redis
-cache 虽然比较强悍,但还是有些不足的,它是一个通用的解决方案,但对于企业级的项目,住住需要解决更多的问题,常见的问题有
缓存
预热(项目启动时加载
缓存
)
缓存
穿透(空值直接穿过
缓存
)
缓存
雪崩(大量
缓存
在同一时刻过期)
缓存
更新(查询到的数据为旧...
Spring Boot
缓存
实战
Redis
设置有效时间和
自动
刷新
缓存
时间方式,直接扩展注解的Value值,如: @Override @Cacheable(value = "people#${select.cache.timeout:1800}#${select.cache.refresh:600}", key = "#person.id", sync = true) public Person findOne(Person person, String a, String[] b, List<Long> c) { Person p = personR
彻底搞懂PHP
缓存
生命周期:TTL设置、预热与
自动
刷新
的3个黄金法则
掌握PHP
缓存
策略的关键方法,解决性能瓶颈与数据一致性难题。详解TTL设置、
缓存
预热与
自动
刷新
三大黄金法则,适用于高并发、动态内容等场景,提升响应速度与系统稳定性。方法实用,值得收藏。
高性能WEB开发
25,980
社区成员
4,366
社区内容
发帖
与我相关
我的任务
高性能WEB开发
高性能WEB开发
复制链接
扫一扫
分享
社区描述
高性能WEB开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章