我们之前在flask中使用过flask_caching模块缓存网站部分更新频率不高的数据,但是没有记录如何查看redis中的key缓存时间和大小的方法,所以今天就来记录下,实际很简单的操作。
其中flask_caching的使用方法,我们可以查看之前的笔记:https://sulao.cn/post/1007
Redis提供了多个命令来查看缓存数据的时间戳,其中最常用的命令是ttl和pttl,查看缓存大小通常可以使用自带的MEMORY USAGE命令
ttl它返回的是以秒为单位的时间,表示 key 距离过期的时间还有多久。如果返回 -1,表示 key 没有设置过期时间;如果返回 -2,表示 key 不存在。
pttl返回值的含义与“ttl”命令相同,只是单位变成了毫秒。
下面我们就来具体查询下缓存时间的查询
redis-cli
keys *
可以看到我们缓存了15条数据,我们查询最后一条数据看看缓存剩余时间是多久。
127.0.0.1:6379> TTL "flask_cache_view//chart/trend/all_writing"
(integer) 7109
可以看到缓存剩余时间接近2小时,我们再使用PTTL查看下
PTTL "flask_cache_view//chart/trend/all_writing"
6790702
可以看到数值变长了,这是因为单位为毫秒,中间少的时间是由于我操作时间间隔。
返回值相关的解释如下:
如果返回 -1,表示该 key 没有设置过期时间,即缓存永不过期;
如果返回 -2,表示该 key 不存在,即缓存已经被移除;
如果返回一个正整数,表示还有多少秒过期。
查看缓存大小的方法如下
MEMORY USAGE "flask_cache_view//chart/trend/all_writing"
(integer) 856
返回的长度就是key的字节长度,上述856就是还不到1k大小。Redis单个key的大小不能超过512MB。
内容版权声明:除非注明,否则皆为本站原创文章。
转载注明出处:https://sulao.cn/post/1119
评论列表