您的位置:首页 > 数据库 > Redis

关于redis 重启后,数据库中数据未及时加载到redis的问题

2015-11-12 16:35 645 查看
现在项目用到了redis,这样极大的提高了数据提取的效率,但如果逻辑处理时不小心,就会给自己泡坑

1.完全依赖后台提供的redis数据,当redis占用率高时进行重启时(一般都不进行落地),数据丢失。

当数据还没有从数据库加载到redis时,而此时又有新数据写入,此时该 缓存再读取的时候,发现缓存存在,而直接进行显示。就造成显示的数据不正确

的解决方式有二:

在总入口做预加载,解决说redis重启的问题,但是当没有要缓存的数据的时候,就会造成频繁的扫库

在插入数据的时候zadd 时,做exists的key存在性判断,只有在存在的情况下才加入缓存。当用的时候,做完全加载

2.某些场景,要根据有没有缓存来判断数据是否显示。最好在处理不显示的时候,只清其内容,还不清其key,用内容来判断是否显示。

否则,不显示就删除key的情况,就造成key不存在,而大面积的扫数据库,给数据库带来压力
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: