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 或属性格式,它就与语言无关。
当前状态:
我有一些不可忽略的微服务是用 python 编写的。
每个这样的微服务都有自己的 yaml 配置文件,位于 git 存储库中。我们使用dynaconf读取配置。
问题:
一开始还好,配置比较少,维护方便。时间过去了,配置变大了。更改配置变得很烦人,而且它们分散在不同的 git 存储库之间是很糟糕的,即不集中。
我想使用 "Externalized Configurations" 来维护单个存储库中的所有配置,并且每个微服务都将在启动时读取其部分。我听说过 Spring Boot,但它似乎太多了,除此之外,似乎 pip 库似乎处于测试阶段,新的和不可靠的...
在这个特定用例中还有其他推荐吗?还是我应该继续 Spring 启动?
我认为您可以为每个服务创建一个默认配置文件并使用 dynaconf 的 external storage 想法。
一个可能的解决方案是创建一个简单的系统来使用 Redis 管理这些变量。
并且 DynaConf CLI 允许您即时进行更改。
您可以使用 Microconfig.IO 通过强大的模板和分发来管理您的配置。只要您的配置是 YAML 或属性格式,它就与语言无关。