node.js全局数组vs redis

时间:2015-03-29 06:04:36

标签: javascript arrays node.js redis

我正在构建一个node.js应用程序并拥有一组我需要查看每个操作的属性(它们与权限相关联)。我使用mysql数据库作为我的持久存储。我最初会使用redis来存储这些属性,因为它们没有那么大的改变,所以可以在应用程序启动时从mysql数据库加载,如果它们发生变化则可以刷新。关键是我需要尽可能快地查找,因为它经常发生,但数据不需要持久存储,所以redis而不是mysql。

正如我今天想到的那样,我想到我可以使用全局关联数组来存储这些数据。我总是会用相同的键来查找内容并始终获取完整的属性列表。我认为当我在服务器上启动应用程序时,它可以将数据加载到连接到节点中“global”对象的数组中,而不是将其粘贴到redis中,这样我就可以降低应用程序堆栈的复杂性。另外,我假设javascript数组也是一个更快的查找,因为它的开销更少。

我错过了什么吗?有没有关于redis或节点中的全局对象的工作方式会使前者更快?我预计最可能的情况是100的键,但可能会有10000的情况。然而,在宏伟的计划中,这似乎仍然没有那么大。

1 个答案:

答案 0 :(得分:2)

将数据存储在全局对象中肯定会更快,因为没有网络开销,解析开销等等。唯一的问题(在您的场景中)是需要更多内存,因为每个都有一个副本处理。如果这不是问题,那就去吧。