redis-memory-for-key 会影响线上服务对 Redis 的读写吗?
redis-memory-for-key -s host -p port -a passwd yourkey
当我们通过 redis-memory-for-key 查询一个内存过大的 key 时,命令执行很久。
由于,我不确定这个命令是否会阻塞 Redis,所以,我立即终止了这个大 key 的查询,怕影响线上服务。
今天,我就在测试环境验证一下,当使用 redis-memory-for-key 查询一个内存过大的 key 时,是否会阻塞整个 Redis?
首先,编写一个 Shell 脚本,制造一个内存大的 key 出来:
for((i=1;i<=50000;++i))
do
echo "hset test_key "$i" "$i | redis-cli -h 127.0.0.1 -p 7100
done
redis-memory-for-key -s 127.0.0.1 -p 7100 test_key
hget test_key 1000