如何获取 Azure Redis 键命中数?
How to get Azure Redis key hit count?
有没有办法获取存储在 azure redis 缓存中的所有键及其命中数?
我想根据键的点击次数生成报告。
How to get Azure Redis key hit count?
- Redis 不直接提供命中率指标。我们仍然可以这样计算:
hit rate = keyspace_hits / (keyspace_hits + keyspace_misses)
i need to just delete cache keys, which are not frequently used or used very less.
- 使用
object idletime
您可以删除所有长期未使用的密钥
#!/usr/bin/env python
import redis
r = redis.StrictRedis(host='localhost', port=6379, db=0)
for key in r.scan_iter("*"):
idle = r.object("idletime", key)
# idle time is in seconds. This is 90days
if idle > 7776000:
r.delete(key)
如果您在 6 个月前创建了一个密钥,但每天都访问该密钥,则更新空闲时间并且此脚本不会删除它。
OBJECT IDLETIME command returns 自存储在指定键上的对象空闲以来的秒数(读取或写入操作未请求)。
#!/bin/sh
redis-cli -p 6379 keys "*" | while read LINE ;
do
val=`redis-cli -p 6379 object idletime $LINE`;
if [ $val -gt $((30 * 24 * 60 * 60)) ];
then
echo "$LINE";
# del=`redis-cli -h redis_host -p redis_port -a redis_password del $LINE`; # be careful with del
# echo $del;
fi
done;
- 更改 scrumplr 的 source 以让 Redis 在 30 天后自动使密钥过期。可疑文件似乎是
lib/data/redis.js
,补丁只需要在写入每个键后使用 SET...EX
或 EXPIRE
命令。
更多信息请参考GIT Hub
有没有办法获取存储在 azure redis 缓存中的所有键及其命中数?
我想根据键的点击次数生成报告。
How to get Azure Redis key hit count?
- Redis 不直接提供命中率指标。我们仍然可以这样计算:
hit rate = keyspace_hits / (keyspace_hits + keyspace_misses)
i need to just delete cache keys, which are not frequently used or used very less.
- 使用
object idletime
您可以删除所有长期未使用的密钥
#!/usr/bin/env python
import redis
r = redis.StrictRedis(host='localhost', port=6379, db=0)
for key in r.scan_iter("*"):
idle = r.object("idletime", key)
# idle time is in seconds. This is 90days
if idle > 7776000:
r.delete(key)
如果您在 6 个月前创建了一个密钥,但每天都访问该密钥,则更新空闲时间并且此脚本不会删除它。
OBJECT IDLETIME command returns 自存储在指定键上的对象空闲以来的秒数(读取或写入操作未请求)。
#!/bin/sh
redis-cli -p 6379 keys "*" | while read LINE ;
do
val=`redis-cli -p 6379 object idletime $LINE`;
if [ $val -gt $((30 * 24 * 60 * 60)) ];
then
echo "$LINE";
# del=`redis-cli -h redis_host -p redis_port -a redis_password del $LINE`; # be careful with del
# echo $del;
fi
done;
- 更改 scrumplr 的 source 以让 Redis 在 30 天后自动使密钥过期。可疑文件似乎是
lib/data/redis.js
,补丁只需要在写入每个键后使用SET...EX
或EXPIRE
命令。
更多信息请参考GIT Hub