Spring Cloud 2022.0.0 正式发布,代号 “Kilburn“

时间:2022-12-22 21:53:22

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 正式发布,代号 “Kilburn“

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。