【问题标题】:Where to store configuration retrieved from etcd in nodejs在 nodejs 中存储从 etcd 检索到的配置的位置
【发布时间】:2015-11-15 02:59:31
【问题描述】:

我从 http 调用获取配置。

我可以在哪里存储该配置,序列化到文件系统或附加到 GLOBAL 或任何其他

我正在使用 nodejs 实现服务发现。 http://lukebond.ghost.io/service-discovery-with-etcd-and-node-js/

我正在获取服务注册表。我想存储它以供在应用程序范围内使用。

【问题讨论】:

  • 有很多方法可以在 Node.js 中存储数据,您可以编写文件,将数据存储在内存中,将其存储在数据库中,可能是 Redis 等...请更具体地了解您的需要。
  • 我问是因为我一直使用文件进行静态配置。首选使用哪一个。这不会有问题。我觉得保持记忆对我的需要来说既方便又有效。但在记忆中意味着我只知道全局
  • 所以将文件写成 JSON 并与 require 一起使用。

标签: node.js soa microservices etcd


【解决方案1】:

我主张将它放在内存中,但不完全将其作为全局访问。您可以在配置中添加一个抽象层,用于检索参数并将其注入到您的应用程序设置中。然后配置层将只负责从环境变量或服务注册表中读取配置。

仅仅因为配置可能是动态的,在从服务注册表读取配置文件后将其写入配置文件确实没有任何优势。在这种情况下,当所需的下游服务关闭时,您可能会再次使用配置抽象来从服务注册表中读取以查找要使用的另一个服务实例来防止停机。将配置写入文件几乎假定您的配置将是静态的,并且是单一的而不是动态的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-23
    • 2023-03-16
    • 1970-01-01
    • 2018-07-13
    • 2020-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多