数组与数据库查找

Posted

技术标签:

【中文标题】数组与数据库查找【英文标题】:Array vs Database lookup 【发布时间】:2020-08-26 13:44:03 【问题描述】:

我在 javascript 数组中存储了一个刷新令牌,并且在每个用户的信息表中都相同。当用户请求数据时,我检查数组中的令牌。为了匹配令牌,我循环数组来检查令牌,如果在数组中找不到令牌,我会在用户的信息表中查找令牌。

我的问题是的性能:如果未来用户增加,哪个更好。

Javascript:

validateToken.forEach(element => 
    if (token == element) 
        retun true;
    
);

为令牌查找数据库

【问题讨论】:

哪种表现? 高效的数组查找(这不是您所展示的)通常比通过数据库更快,因为内存访问比磁盘访问快。 【参考方案1】:

我相信您正在使用 node.js 作为后端并将其连接到某个数据库。鉴于设计,将令牌存储在内存中通常不是一个好习惯。如果您正在验证请求,则令牌应出现在标头中。

另外,如果您使用的是 JWT,那么您不需要在任何地方存储令牌,您可以随时验证令牌以查看它是否被篡改。无论哪种方式,您都必须查询数据库以检查令牌信息是否与数据库条目匹配。

【讨论】:

以上是关于数组与数据库查找的主要内容,如果未能解决你的问题,请参考以下文章

数据结构与算法|如何在二维数组中查找元素

java 数据结构与算法 之查找法

for循环遍历查找数据与sqlite数据库查找数据性能问题

数据结构与算法之二分查找

数据结构与算法之二分查找

c语言编程实现“折半查找”的过程。