|
对于最新的稳定版本,请使用Spring Cloud Config 5.0.0! |
AOT与原生图像支持
因为4.0.0Spring Cloud 配置服务器支持 Spring AOT 转换。截至4.1.0它也支持 GraalVM 原生镜像,只要使用 GraalVM 21 或更高版本,但需要用户为已知的 GraalVM 问题添加一些变通方法,如下所述。
- 重要
-
由于Graal's中的[一个bug](github.com/oracle/graal/issues/5134)
文件系统提供者需要添加一个配置变通方法,使配置服务器能够作为原生映像运行。你需要在 GraalVM 构建插件设置中添加以下选项(详情请参阅 GraalVM Maven 或 Gradle 插件文档):
-H:-AddAllFileSystemProviders
--strict-image-heap
--initialize-at-build-time=org.bouncycastle
--initialize-at-build-time=net.i2p.crypto.eddsa.EdDSASecurityProvider
--initialize-at-run-time=org.bouncycastle.jcajce.provider.drbg.DRBG$Default
--initialize-at-run-time=org.bouncycastle.jcajce.provider.drbg.DRBG$NonceAndIV
- 注意
-
增加额外的构建时间初始化可能会影响性能,但相比普通JVM运行,仍然可能带来更好的提升。务必根据你的应用进行测量和比较。
- 提示
-
如果你通过SSH连接配置数据后端,请记住GraalVM要求安全提供商注册使用
java.security
原生图像不支持刷新范围。如果你打算将配置客户端应用作为原生镜像运行,务必设置spring.cloud.refresh.enabled属性到false. |