Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Redis Node JS-存储同一类的多个对象_Node.js_Caching_Redis_Hashmap - Fatal编程技术网

Node.js Redis Node JS-存储同一类的多个对象

Node.js Redis Node JS-存储同一类的多个对象,node.js,caching,redis,hashmap,Node.js,Caching,Redis,Hashmap,我想在redis缓存中存储一个类的所有对象,并能够检索它们,因为我知道hashmaps用于存储对象,但它们需要保存不同的密钥。因此,我无法将它们全部保存在“items”下,并通过该键检索它们。我唯一能做的就是这样: items.forEach(item => { redis.hmset(`item${item.id}`, item); } 但这感觉是错误的,当我想要得到这些数据时,我必须再次进行for循环。有更好的解决办法吗? 还有一个关联对象的问题,我在任何地方都找不到它们

我想在redis缓存中存储一个类的所有对象,并能够检索它们,因为我知道hashmaps用于存储对象,但它们需要保存不同的密钥。因此,我无法将它们全部保存在“items”下,并通过该键检索它们。我唯一能做的就是这样:

items.forEach(item => {
    redis.hmset(`item${item.id}`, item);
}  
但这感觉是错误的,当我想要得到这些数据时,我必须再次进行for循环。有更好的解决办法吗?
还有一个关联对象的问题,我在任何地方都找不到它们在redis中是如何存储和使用的。

据我所知,您想用相同的前缀保存不同的键

用于检索使用

以防您仍要使用hmset 在循环中使用pipline
因此,对redis的调用将是唯一一个具有同步操作的调用

据我所知,您希望使用相同的前缀保存不同的键

用于检索使用

以防您仍要使用hmset 在循环中使用pipline
因此,对redis的调用将是唯一一个具有同步操作的调用

我必须存储对象,因此我不确定mset如何为我工作。我不确定你所说的“对redis的调用将是唯一一个同步操作”的意思。当你想取回数据时,使用for循环和pipeline.hmget除了循环你没有其他方法。我必须存储对象,所以我不确定mset如何为我工作。我不确定你所说的“对redis的调用将是唯一一个同步操作”的意思。当你想取回数据时,使用for循环和pipeline.hmget。除了这个循环之外,你没有其他方法