【问题标题】:Externalized configurations in python microservicespython微服务中的外部化配置
【发布时间】:2020-08-02 20:54:57
【问题描述】:

当前状态:

我有一些不可忽略的用 python 编写的微服务。

每个这样的微服务都有自己的 yaml 配置文件,位于 git repo 中。我们使用 dynaconf 读取配置。

问题:

一开始还不错,配置比较小,维护也很方便。时间流逝,配置变得更大。更改配置变得很烦人,而且它们分散在不同的 git repos 之间是很糟糕的,即不集中。

我想使用“外部化配置”来维护单个存储库中的所有配置,并且每个微服务都会在启动时读取其部分。我听说过 Spring Boot,但它似乎太多了,除此之外,pip 库似乎处于 beta 阶段,新的和不可靠的......

在这个特定用例中还有其他推荐吗?还是我应该继续使用 Spring Boot?

【问题讨论】:

    标签: python configuration microservices configuration-files


    【解决方案1】:

    您可以使用Microconfig.IO 通过强大的模板和分发来管理您的配置。只要您的配置是 YAML 或属性格式,它就与语言无关。

    【讨论】:

    • 这很好,最后我们自己实现了完全相同的功能(显然少得多)。在不同的实现中看到相同的想法令人惊讶。
    • 每个人的问题都是一样的,所以解决方案相似也就不足为奇了:)
    【解决方案2】:

    我认为您可以为每个服务创建一个默认配置文件并使用 dynaconf 的external storage 理念。

    一种可能的解决方案是创建一个简单的系统来使用 Redis 管理这些变量。

    DynaConf CLI 允许您即时进行更改。

    【讨论】:

      猜你喜欢
      • 2019-05-26
      • 2016-06-22
      • 2018-04-28
      • 2017-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-06
      • 2019-10-22
      相关资源
      最近更新 更多