gpt4 book ai didi

javascript - 在 Node.js "global"变量中存储 100 多个对象

转载 作者:搜寻专家 更新时间:2023-11-01 00:31:32 26 4
gpt4 key购买 nike

我的配置设置是动态的,所以我决定将它们保存在数据库中。这些配置按 NODE_ENV 分类,因此我想在服务器启动后通过查询数据库来引导配置,因为每个请求都需要配置。因此,我将配置保存在一个全局对象中。

我的问题是:

  1. 这种方法可行吗?
  2. 有什么方法可以引导配置吗?
  3. 存储这个对象会导致内存泄漏吗?
  4. 将配置存储在全局中需要多少空间?
  5. 全局对象会被垃圾回收吗?

最佳答案

  1. 绝对可行。但是,我不知道您的应用程序的上下文,所以我不能说它是否好。
  2. 为了加载配置,您必须先连接到数据库并执行加载,然后再尝试访问它。这样做取决于您的应用程序,但您始终可以在放弃对应用程序的控制之前连接到数据库。然后,选择要存储的全局名称并将其存储在全局中将是一件简单的事情。
  3. 没有。除非你不断地不受控制地一遍又一遍地创建对象,并且以某种方式从某处范围内的某个对象引用它们,否则很难在不注意的情况下做到这一点。
  4. 老实说?不多。 node.js 的标准库可能比你的配置要大得多。该死,您用来连接到数据库以获取配置的库可能比您的配置要大。
  5. 没有。只要您能够访问它就不会。 Node.JS 使用经过大量修改的标记清除垃圾收集器;这意味着 Node.JS 有一个对象列表,这些对象永远不会被垃圾收集(“根”),并标记它可以从这些对象访问的每个对象。任何未标记的东西都会被收集并释放。全局命名空间是这些根之一,表示未收集全局命名空间引用的任何内容。

希望对您有所帮助。

关于javascript - 在 Node.js "global"变量中存储 100 多个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31662315/

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