如何确定 Redis 中给定键的值所占用的内存量?

从我研究 Redis 文档得知,您可以使用 STRLEN 确定字符串所使用的内存(基本上)。但是如果我想确定列表或哈希使用的内存量怎么办?

理想情况下,我希望能够在不使用插件或第三方软件的情况下完成此操作。也许我需要对一个 Lua 脚本进行 EVAL?

点赞
用户3160475
用户3160475

目前(v3.2.1),Redis没有提供这种自省功能,我担心在这种情况下Lua脚本会用处不大。

然而,我的同事提交了一个拉取请求,加入了这个功能 - https://github.com/antirez/redis/pull/3223,我希望它最终会被合并。

2016-07-18 23:08:39
用户3526910
用户3526910

不清楚Lua Script,但是这里有一个小的.NET应用程序,可以帮助您确定Redis数据库中每个键使用的大小,

您可以使用.NET应用程序https://github.com/abhiyx/RedisSizeCalculator来计算Redis键的大小,

2016-07-19 12:17:16