此版本仍在开发中,目前尚不稳定。如需最新稳定版本,请使用 Spring Cloud Config 5.0.1spring-doc.cadn.net.cn

AOT 和原生映像支持

4.0.0 版本起,Spring Cloud Config Server 支持 Spring AOT 转换。自 4.1.0 版本起,它还支持 GraalVM 原生镜像,但前提是使用 GraalVM 21 或更高版本;不过,用户需要针对已知的 GraalVM 问题添加一些补救措施,具体说明如下。spring-doc.cadn.net.cn

由于 Graal 的 一个缺陷FileSystemProvider),需要添加配置绕过方案,以允许配置服务器作为原生镜像运行。您需要将以下选项添加到您的 GraalVM 构建插件设置中(请参阅 GraalVM Maven 插件GraalVM Gradle 插件 了解详细信息):spring-doc.cadn.net.cn

-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