领先一步
VMware 提供培训和认证,助您加速进步。
了解更多我谨代表社区,非常高兴地宣布 Spring Cloud Hoxton Release Train 的通用可用性 (RELEASE) 已于今日发布。您可以在 Maven Central 中找到该版本。您可以查阅 Hoxton 的 发布说明以获取更多信息。
Spring Cloud Hoxton.RELEASE 基于 Spring Boot 2.2.1.RELEASE。
Hoxton.RELEASE 的文档包含了一个新的 主页、新的主题以及 单页、多页和 PDF 版本。主页将链接到您感兴趣的特定项目的文档。我们希望您觉得新的文档结构更容易消化。
Spring Cloud Hoxton.RELEASE 是首个包含阻塞式和非阻塞式负载均衡器客户端实现的发行版,作为已进入维护模式的 Netflix Ribbon 的替代方案。
要使用新的 BlockingLoadBalancerClient 和 RestTemplate,您需要在应用程序的类路径中包含 org.springframework.cloud:spring-cloud-loadbalancer。在响应式应用程序中使用 @LoadBalanced WebClient.Builder 时,可以使用相同的依赖项——唯一的区别是 Spring Cloud 将自动配置 ReactorLoadBalancerExchangeFilterFunction 实例。有关更多信息,请参阅 文档。新的 ReactorLoadBalancerExchangeFilterFunction 也可以自动注入并直接传递给 WebClient.Builder(请参阅 文档)。对于所有这些功能,底层都使用了基于 Project Reactor 的 RoundRobinLoadBalancer。
ReactiveDiscoveryClient 和 Hystrix 新 Spring Cloud Circuit Breaker API 实现的支持。ReactiveDiscoveryClient 的支持。X-Vault-Namespace 标头进行 Vault 命名空间(Vault Enterprise 功能)的支持。ReactiveDiscoveryClient 的支持。inProgress 标志。ReactiveDiscoveryClient 和 Consul 的一致性模式的支持。借助新的 Horsham.RELEASE (3.0.0),我们开始从注解驱动转向一个更简单的函数式方法。我们已经发布了一系列文章来解释和论证这一转变。
onLastOperator Reactor 追踪添加了选项,以提高性能。ReactiveDiscoveryClient 的支持。我们欢迎 Spring Cloud Circuit Breaker 作为 Spring Cloud Release Train 下的一个新项目。该项目提供了用于为应用程序添加断路器的抽象 API。在此博客文章发布时,有四种支持的实现:
有关更多信息,请参阅 公告博客文章。
大量新功能,例如:
更多详情请参阅我们的 发布公告。
ReactiveLoadBalancer 的支持。以下模块已在 Hoxton.RELEASE 中更新:
| 模块 | 版本 | 问题 |--- |--- |--- |--- | Spring Cloud Netflix | 2.2.0.RELEASE |
| Spring Cloud Starter Parent | Hoxton.RELEASE |
| Spring Cloud Dependencies Parent | 2.2.0.RELEASE |
| Spring Cloud Dependencies | Hoxton.RELEASE |
| Spring Cloud Cloudfoundry | 2.2.0.RELEASE |
| Spring Cloud Cli | 2.2.0.RELEASE | (问题) | Spring Cloud Bus | 2.2.0.RELEASE |
| Spring Cloud Vault | 2.2.0.RELEASE | (问题) | Spring Cloud Kubernetes | 1.1.0.RELEASE |
| Spring Cloud Contract | 2.2.0.RELEASE | (问题) | Spring Cloud Consul | 2.2.0.RELEASE |
| Spring Cloud Release | Hoxton.RELEASE |
| Spring Cloud Build | 2.2.0.RELEASE | (问题) | Spring Cloud Config | 2.2.0.RELEASE |
| Spring Cloud | Hoxton.RELEASE |
| Spring Cloud Gcp | 1.2.0.RELEASE |
| Spring Cloud Stream | Horsham.RELEASE | (问题) | Spring Cloud Commons | 2.2.0.RELEASE | (问题) | Spring Cloud Starter | Hoxton.RELEASE |
| Spring Cloud Openfeign | 2.2.0.RELEASE |
| Spring Cloud Task | 2.2.1.RELEASE |
| Spring Cloud Sleuth | 2.2.0.RELEASE | (问题) | Spring Cloud Aws | 2.2.0.RELEASE |
| Spring Cloud Zookeeper | 2.2.0.RELEASE | (问题) | Spring Cloud Security | 2.2.0.RELEASE |
| Spring Cloud Circuitbreaker | 1.0.0.RELEASE | (问题) | Spring Cloud Function | 3.0.0.RELEASE | (问题) | Spring Cloud Gateway | 2.2.0.RELEASE | (问题)
一如既往,我们欢迎大家在 GitHub、Gitter、Stack Overflow 或 Twitter 上提供反馈。
Maven 起步使用 BOM(仅依赖管理)
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Hoxton.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
...
</dependencies>
或使用 Gradle
buildscript {
dependencies {
classpath "io.spring.gradle:dependency-management-plugin:1.0.2.RELEASE"
}
}
apply plugin: "io.spring.dependency-management"
dependencyManagement {
imports {
mavenBom 'org.springframework.cloud:spring-cloud-dependencies:Hoxton.RELEASE'
}
}
dependencies {
compile 'org.springframework.cloud:spring-cloud-starter-config'
compile 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client'
...
}