python 微服务中的外部化配置

Externalized configurations in python microservices

当前状态:

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

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

问题:

一开始还好,配置比较少,维护方便。时间过去了,配置变大了。更改配置变得很烦人,而且它们分散在不同的 git 存储库之间是很糟糕的,即不集中。

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

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

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

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

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

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