Spring.application.name 在 Bootstrap.properties 中的意义
Significance of Spring.application.name in Bootstrap.properties
您好,我有一个 spring 云配置服务器设置。
我有多个配置文件(环境):dev、prod、test 等
配置客户端bootstrap.properties的内容是-
spring.application.name=hazelcast,kafka.
....
.... including uri of config server.
现在在配置服务器指向的我的存储库中,除了特定于环境的应用程序-dev.properties、应用程序-prod.properties 等之外,还有 application.properties。我还有 hazelcast -dev.properties、hazelcast-prod.properties、kafka-dev.properties、kafka-prod.properties等
当我 运行 我的配置客户端 spring 启动应用程序时 profiles.active 设置为开发。配置客户端能够从服务器检索以下文件:
1.application.properties.
2.application-dev.properties.
3.hazelcast-dev.properties.
4.kafka-dev.properties.
当我 运行 prod 配置文件处于活动状态时,将检索相应的 prod 文件(其中的值将添加到 spring 的环境中)。
现在这行得通,很好,但我想了解其背后的逻辑。 spring.application.name
是专门针对这个的吗?
我查看了文档,但并没有完全清楚。
提前致谢!
编辑-
https://cloud.spring.io/spring-cloud-static/spring-cloud.html#_application_context_hierarchies
上面 link 中的 Bootstrap 应用程序上下文部分几乎回答了我的问题,但希望有人能确认一下。
它有几个不同的用途。它在向服务注册中心(如 eureka)注册时用作应用程序名称。它还用于在 configserver 中查找 <applicationName>[-<profile>].[properties|yml]
以及在 consul 或 zookeeper 中的配置。
如果您在 Openshift 上部署 Spring 项目;
Spring 使用它在您的 openshift-project 中查找在 configmaps 中声明的同名资源。
此外,
- 注册 spring 应用程序名称到命名服务器 (Netflix Eureka)
- 通过应用程序名称和配置文件从 spring 云配置中获取配置。
也用于
- Spring 总线到地址 spring 调用总线刷新 (
/actuator/bus-refresh/{destination}
) 和总线环境 (/actuator/bus-env/{destination}
) 端点的应用程序
您好,我有一个 spring 云配置服务器设置。 我有多个配置文件(环境):dev、prod、test 等
配置客户端bootstrap.properties的内容是-
spring.application.name=hazelcast,kafka.
....
.... including uri of config server.
现在在配置服务器指向的我的存储库中,除了特定于环境的应用程序-dev.properties、应用程序-prod.properties 等之外,还有 application.properties。我还有 hazelcast -dev.properties、hazelcast-prod.properties、kafka-dev.properties、kafka-prod.properties等
当我 运行 我的配置客户端 spring 启动应用程序时 profiles.active 设置为开发。配置客户端能够从服务器检索以下文件:
1.application.properties.
2.application-dev.properties.
3.hazelcast-dev.properties.
4.kafka-dev.properties.
当我 运行 prod 配置文件处于活动状态时,将检索相应的 prod 文件(其中的值将添加到 spring 的环境中)。
现在这行得通,很好,但我想了解其背后的逻辑。 spring.application.name
是专门针对这个的吗?
我查看了文档,但并没有完全清楚。
提前致谢!
编辑-
https://cloud.spring.io/spring-cloud-static/spring-cloud.html#_application_context_hierarchies
上面 link 中的 Bootstrap 应用程序上下文部分几乎回答了我的问题,但希望有人能确认一下。
它有几个不同的用途。它在向服务注册中心(如 eureka)注册时用作应用程序名称。它还用于在 configserver 中查找 <applicationName>[-<profile>].[properties|yml]
以及在 consul 或 zookeeper 中的配置。
如果您在 Openshift 上部署 Spring 项目; Spring 使用它在您的 openshift-project 中查找在 configmaps 中声明的同名资源。
此外,
- 注册 spring 应用程序名称到命名服务器 (Netflix Eureka)
- 通过应用程序名称和配置文件从 spring 云配置中获取配置。
也用于
- Spring 总线到地址 spring 调用总线刷新 (
/actuator/bus-refresh/{destination}
) 和总线环境 (/actuator/bus-env/{destination}
) 端点的应用程序