python微服务中的外部化配置

python微服务中的外部化配置,python,configuration,microservices,configuration-files,Python,Configuration,Microservices,Configuration Files,当前状态: 我用python编写了一些不容忽视的微服务 每个这样的微服务都有自己的yaml配置文件,该文件位于git repo中。我们使用dynaconf读取配置 问题: 一开始还不错,配置相对较小,维护起来也很容易。随着时间的推移,配置变得越来越大。更改配置变得很烦人,而且配置分散在不同的git回购协议之间,即不集中,这很糟糕 我想使用“外部化配置”,以便在单个回购中维护所有配置,并且每个微服务将在启动时读取其部分。我听说过Spring Boot,但它似乎太多了,除此之外,pip库似乎还处于测

当前状态:

我用python编写了一些不容忽视的微服务

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

问题:

一开始还不错,配置相对较小,维护起来也很容易。随着时间的推移,配置变得越来越大。更改配置变得很烦人,而且配置分散在不同的git回购协议之间,即不集中,这很糟糕

我想使用“外部化配置”,以便在单个回购中维护所有配置,并且每个微服务将在启动时读取其部分。我听说过Spring Boot,但它似乎太多了,除此之外,pip库似乎还处于测试阶段,新的且不可靠


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

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

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


并且允许您动态地进行更改。

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

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