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。