我有HOCON(.conf
)格式的配置文件。我想使用Spring Cloud Config从BitBucket存储库中获取它们,并在启动时将它们发送到应用程序(不是Spring应用程序)。
我正在使用Spring Cloud Config的“服务纯文本”功能来获取并提供一个单独的HOCON文件,该文件定义了特定的环境。例如,客户端应用程序请求development.conf
环境配置文件,并通过在BitBucket存储库中指定确切的路径(例如myApp/development/master/development.conf
)来向客户端提供该纯文本文件。
但是,我通常希望将base.conf
中的基本属性包含在development.conf
中,并且如果两个文件中都有相同的属性,则它们的值将被dev环境属性值覆盖。
以前没有配置服务器,因此只需在include "base"
文件顶部编写development.conf
命令,客户端应用程序中的HOCON解析器(TypeSafe库的一部分)就可以请求base.conf
文件(两个文件都在本地目录中),并在必要时进行覆盖。
在包含Spring Config服务器时,可以像上面提到的那样以纯文本格式获取development.conf
,但是(在以前)应用程序在客户端解析include "base"
命令,然后重新获取base.conf
文件。这可能会使应用程序的启动阶段非常缓慢(可能是因为),因为获取其他文件需要在BitBucket上进行其他授权。
问题:如何使其更快?
我尝试过spring.cloud.config.server.git.cloneonStart: true
,但这显然没有任何改善(也许我使用不正确?)
我应该考虑将.conf
格式转换为.properties
格式,并在新spring.profiles.include: base
文件顶部使用developement.properties
属性吗?
也许将Spring服务器嵌入到另一个Spring Boot应用程序中?
我喜欢Spring Cloud的属性覆盖和包含功能。我只是不知道如何使用HOCON格式的文件。