什么是在节点模块中保持状态的最佳方法?

时间:2018-02-07 23:47:30

标签: node.js module

我正在编写一个包含多个函数的auth模块,以便我的服务器可以使用client_credentials使用oAuth2系统进行身份验证。在模块中,我想缓存/保存凭据,因为它们不会过期一段时间(我会根据需要刷新)。

存储凭据的最佳方式是什么?

我应该在节点模块的顶部创建一个var吗?我应该创建一个class并将其实例化(const auth = new MyClass()),然后进行后续API调用(使用Bearer令牌)吗?

1 个答案:

答案 0 :(得分:0)

创建var变量意味着将数据存储在RAM中,这不是一种全面的方法。

我建议你看看Redis,它主要是为了你的目的而开发的。

Redis用作数据库和缓存,因为它超快,因为数据存储在“内存中”,与其他数据通常存储在“磁盘上”的数据库相反。

此外,还有一些想法认为Node.js在存储数据方面的效率低于Redis。这个article将更清楚我的观点。

因此,一般来说,我猜使用Redis会为您带来更多存储凭据的优势。