领先一步
VMware 提供培训和认证,以加速您的进步。
了解更多我谨代表社区宣布,Spring Cloud Dalston 发布列车的里程碑 1 (M1) 今天已发布。该版本可以在我们的 Spring Milestone 存储库中找到。您可以查看 Dalston 的 发行说明以获取更多信息。
Spring Cloud Vault Config 是一个新的项目,它通过 Hashicorp Vault 为分布式系统中的外部化密钥管理提供客户端支持。
Hashicorp Vault 之前已作为后端添加到配置服务器,以配合基于 VCS 的后端。配置服务器现在通过组合模式支持多个后端。这允许以前不可能的各种后端类型的组合,例如:Vault 和 git 或多个 git 后端。现在支持对 AWS Codecommit 托管的 git 存储库进行身份验证。
从这些 Spring Cloud 核心模块(Commons、Config、Netflix、Bus)开始,DiscoveryClient
的实现会自动将正在运行的客户端注册到发现服务器。这是最初的 Netflix Eureka 实现的副作用。现在,服务注册和已注册服务的发现是独立的问题。现在有一个 ServiceRegistry
接口,Spring Cloud Netflix、Consul 和 Zookeeper 都实现了该接口。默认情况下,客户端仍然会自动注册,但可以通过 @EnableDiscoveryClient
的 autoRegister
属性或通过属性动态禁用。这也允许在 JVM 中以编程方式注册多个服务。请查找未来的博文以获取更多详细信息。
社区贡献了对 @LoadBalanced
AsyncRestTemplate
的支持。
已向 Sleuth 添加对通用上下文传播系统的支持。它被称为行李,并允许通过边界(例如 HTTP 或消息传递)传递任意属性,使用 Sleuth 已构建的检测。
契约得到了增强,以支持契约输入和输出的更多灵活性。添加了 Pact 支持以读取契约,而不是 Groovy DSL。契约变得更加可插拔,允许自定义 DSL 格式、测试和存根生成以及存根运行器实现。
除了对新的 ServiceRegistry
API 的支持外,Spring Cloud Consul 还支持 Consul 功能以取消注册僵尸服务(即在可配置的时间段内无法通过健康检查的服务将从 Consul 中移除)。
Dalston 基于 Spring Boot 1.5.x,这是最低要求的版本。其他更改包括各种库的升级、错误修复、文档和完善。非常感谢社区贡献的拉取请求和问题。
以下模块已作为 Dalston.M1 的一部分进行了更新
模块 | 版本 |
---|---|
Spring Cloud AWS | 1.2.0.M1 |
Spring Cloud Build | 1.3.1.M1 |
Spring Cloud Bus | 1.3.0.M1 |
Spring Cloud Cloudfoundry | 1.1.0.M1 |
Spring Cloud Commons | 1.2.0.M1 |
Spring Cloud Config | 1.3.0.M2 |
Spring Cloud Consul | 1.2.0.M1 |
Spring Cloud Contract | 1.1.0.M1 |
Spring Cloud Netflix | 1.3.0.M1 |
Spring Cloud Security | 1.2.0.M1 |
Spring Cloud Sleuth | 1.2.0.M1 |
Spring Cloud Stream | Chelsea.M1 |
Spring Cloud Task | 1.1.2.RELEASE |
Spring Cloud Vault Config | 1.0.0.M2 |
Spring Cloud Zookeeper | 1.1.0.M1 |
注意:Spring Cloud CLI 1.2.0.M1 将稍后发布。
并且,像往常一样,我们欢迎您的反馈:无论是在 GitHub 上、在 Gitter 上、在 Stack Overflow 上还是在 Twitter 上。
要使用 Maven 和 BOM(仅依赖管理)开始使用
<repositories>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>http://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<dependencyManagement>
<dependencies>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Dalston.M1</version>
<type>pom</type>
<scope>import</scope>
</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-eureka</artifactId>
</dependency>
...
</dependencies>
或使用 Gradle
buildscript {
dependencies {
classpath "io.spring.gradle:dependency-management-plugin:1.0.0.RELEASE"
}
}
repositories {
maven {
url 'http://repo.spring.io/milestone'
}
}
apply plugin: "io.spring.dependency-management"
dependencyManagement {
imports {
mavenBom 'org.springframework.cloud:spring-cloud-dependencies:Dalston.M1'
}
}
dependencies {
compile 'org.springframework.cloud:spring-cloud-starter-config'
compile 'org.springframework.cloud:spring-cloud-starter-eureka'
...
}