Spring Cloud 2022.0.0 已正式发布。
获取地址:https://repo1.maven.org/maven2/org/springframework/cloud/spring-cloud-dependencies/2022.0.0/
Spring Cloud 为开发人员提供了工具,以快速构建分布式系统中的某些常见模式(例如:配置管理、服务发现、智能路由、微代理、控制总线、一次性令牌、全局锁、分布式会话、群集状态等)。架构如下:
Spring Cloud 2022.0.0 是基于 Spring Framework 6.x 和 Spring Boot 3.x 构建的重要版本,兼容 Jakarta EE,并且最低要求使用 Java 17。
由于 Spring 现在提供了他们自己实现的接口 HTTP 客户端解决方案,因此从 2022.0.0 开始,Spring Cloud OpenFeign 已到达特性完成状态。这意味着 Spring Cloud 团队不会再向该模块添加新功能,未来主要是修复错误和安全问题,以及审查来自社区的小型 PR。
包含重要变化的其他模块如下:
-
Spring Cloud Kubernetes
-
Spring Cloud Function
-
Spring Cloud Circuitbreaker
-
Spring Cloud Task
-
Spring Cloud Stream
-
Spring Cloud OpenFeign
-
Spring Cloud Commons
-
Spring Cloud Contract
-
Spring Cloud Netflix
-
Spring Cloud Consul
-
Spring Cloud Config
-
Spring Cloud Gateway
详情查看 Release Notes:https://github.com/spring-cloud/spring-cloud-release/wiki/Spring-Cloud-2022.0-Release-Notes
大致翻译一下
中断更改
Spring云CLI
此项目已从发布序列中删除。
Spring Cloud Cloudfoundry公司
此项目已从发布序列中删除。
Spring云公用
AsyncRestTemplate已在Spring Framework 6中删除,因此LoadBalancer的自动配置已删除。
已迁移到新的Spring Security OAuth 2 for Token Relay。
由于spring Boot 3.0中的更改,spring.config.uselegacyprocessing=true不再启用引导。请使用spring.cloud.bootstrap.enabled=true。
LoadBalancer ResponseData现在使用org.springframework.http.HttpStatusCode。
已从ReactorLoadBalancerExchangeFilterFunction、RetryableLoadBalancerSexchangeFilterFunction、RetyLoadBalancer Interceptor、BlockingLoadBalancer-Client、HealthCheckServiceInstanceListSupplier、HintBasedServiceInstanceListSuppler、LoadBalanceerServiceInstanceCookieTransformer、RequestBasedStickySessionServiceInstanceListProvider、LoadBalancesClientFactory中删除不推荐的构造函数。用户需要迁移到较新的构造函数。
为服务实例解析方案的方式已更改#1168。用户现在可以重写getScheme()方法来提供自己的实现,并且可能需要这样做来保持兼容性。
删除了@EnableCircuitBreaker,因为它仅由Hystrix在不再支持的Spring Cloud Netflix中使用
删除@SpringCloudApplication注释@不再需要EnableDiscoveryClient和@EnableCircuitBreaker。
删除org.springframework.commons.httpclient#1171下的类和接口
春季云合同
春云侦探
此项目已从发布序列中删除。该项目的核心已转移到千分尺跟踪项目,仪器将转移到千分尺和所有相应的项目(不再所有仪器都将在一个存储库中完成)。
春云Kubernetes
在3.0.0-M1之前的版本中,Kubernetes感知是使用spring.cloud.kubenetes.enabled属性实现的。此属性已删除,不受支持。相反,我们使用Spring Boot API:ConditionalOnCloudPlatform。如果需要显式启用或禁用这种感知,请使用spring.main.cloudplatform=NONE/KUBERNETES。
春云OpenFeign
LoadBalancer ResponseData现在使用org.springframework.http.HttpStatusCode。
OAuth2支持已迁移到SpringSecurityOAuth2客户端。
feign.autoconfigion.jackson.enabled现在默认设置为true。
为了与上游Feign项目中的变化保持一致,方法签名中的decode404属性和decode404段已更改为disease404。
已删除弃用的构造函数和方法。
为了与Spring Framework中的更改保持一致,已删除对Apache HttpClient 4的支持。Apache HttpClient 5是推荐的替代品,它的支持已经有一段时间了。
spring.cloud.openfeign.metrics属性前缀已更改为spring.loud.openfegn.micrometer。
春季云Netflix
删除了不必要的@EnableEurekaClient注释
已删除已弃用的RestTemplateDiscoveryClientOptionalArgs#RestTemplateDiscoveryClientOptionalArgs()构造函数
切换到默认的热切@FeignClient属性解析。如果您想返回惰性属性解析(例如,对于具有Spring Cloud Contract集成的测试),请将Spring.Cloud.openfeign.lazy-attributes-resolution设置为true。