gpt4 book ai didi

node.js - node_redis 更新已用内存信息

转载 作者:IT王子 更新时间:2023-10-29 06:16:34 27 4
gpt4 key购买 nike

我正在使用 node_redis客户端,我想监控 Redis 当前使用的内存量:

const redis = require('redis');
const redisClient = redis.createClient();

setInterval(() => {
// add much data to redis, then:
console.log(redisClient.server_info.used_memory);
}, 1000);

这会在每个时间间隔记录相同数量的内存。但是,如果我使用 redis-cli“info”命令,我可以看到内存在增加。

我想出的唯一解决方案是每次我想检查内存时创建一个新客户端:

const redis = require('redis');

setInterval(() => {
// add much data to redis, then create new client to watch memory:
const redisClient = redis.createClient();
console.log(redisClient.server_info.used_memory);
redisClient.quit();
}, 1000);

不过,这似乎不是正确的做法。有没有一种方法可以“更新” used_memory 信息而无需每次都创建新的客户端?

最佳答案

这样就可以了:

setInterval(() => {
redisClient.info((req, res) => {
res.split("\n").map((line) => {
if (line.match(/used_memory_human/)) {
console.log('Used memory: ' + line.split(":")[1]);
}
})
});
}, 1000);

它将按行拆分您的info输出,并打印包含used_memory_human的行的值

关于node.js - node_redis 更新已用内存信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53104472/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com