Spring Cloud Dalston RC1 发布

发布 | Ryan Baxter | 2017年3月21日 | ...

我代表社区高兴地宣布,Spring Cloud Dalston 发布列车的候选版本 1 (RC1) 现已推出。可以在我们的 Spring Milestone 仓库中找到该版本。您可以查看 Dalston 的 发行说明以了解更多信息

Dalston 发布列车的显著变化

Vault

Spring Cloud Vault Config 是一个新项目,它通过 Hashicorp Vault 为分布式系统中的外部化密钥管理提供客户端支持。

配置服务器

配置服务器现在通过组合模式支持多个后端。这允许以前不可能实现的后端类型组合,例如:Vault 和 git 或多个 git 后端。现在支持对 AWS Codecommit 托管的 git 仓库进行身份验证。在之前的 (Camden) 版本中,Hashicorp Vault 已经作为后端添加到配置服务器中,以配合基于 VCS 的后端。

Spring Cloud Commons

从核心 Spring Cloud 模块(Commons、Config、Netflix、Bus)开始,DiscoveryClient 的实现会自动将正在运行的客户端注册到发现服务器。这是最初 Netflix Eureka 实现的副作用。现在,服务注册和已注册服务的发现是独立的问题。现在有一个 ServiceRegistry 接口,Spring Cloud Netflix、Consul 和 Zookeeper 都实现了该接口。默认情况下,客户端仍然会自动注册,但这可以通过 @EnableDiscoveryClientautoRegister 属性或通过属性动态禁用。这也允许以编程方式注册每个 JVM 中的多个服务。查找未来的博客文章以了解更多详细信息。

社区贡献了对 @LoadBalanced AsyncRestTemplate 的支持。

Sleuth

Sleuth 已添加对通用上下文传播系统的支持。它被称为“行李”,并允许使用 Sleuth 已构建的工具通过边界(例如 HTTP 或消息传递)传递任意属性。

另一个功能是基于注解的 Span 创建以及日志和标签的添加。这不仅减少了样板代码,而且在使用运行时生成实现的框架(例如 Spring Data)时也很有用。

契约

契约已增强以支持契约输入和输出的更大灵活性。添加了 Pact 支持以读取契约,而不是 Groovy DSL。契约变得更加可插入,允许自定义 DSL 格式、测试和存根生成以及存根运行器实现。

Consul

除了对新的 ServiceRegistry API 的支持之外,Spring Cloud Consul 还支持 Consul 功能来注销僵尸服务(即,在可配置的时间量内健康检查失败的服务将从 Consul 中删除)。

其他

Dalston 基于 Spring Boot 1.5.x,这是最低要求的版本。其他更改包括升级各种库、修复错误、编写文档和改进。非常感谢社区对拉取请求和问题的贡献。

以下是作为 Dalston.RC1 更新的模块:

模块 版本
Spring Cloud AWS 1.2.0.RC1
Spring Cloud Build 1.3.1.RELEASE
Spring Cloud Bus 1.3.0.M1
Spring Cloud Cloudfoundry 1.1.0.M1
Spring Cloud Commons 1.2.0.RC1
Spring Cloud Config 1.3.0.RC1
Spring Cloud Consul 1.2.0.RC1
Spring Cloud Contract 1.1.0.RC1
Spring Cloud Netflix 1.3.0.RC1
Spring Cloud Security 1.2.0.RC1
Spring Cloud Sleuth 1.2.0.RC1
Spring Cloud Stream Chelsea.RC1
Spring Cloud Task 1.1.1.RELEASE
Spring Cloud Vault Config 1.0.0.RC1
Spring Cloud Zookeeper 1.1.0.RC1
Spring Cloud Thin Launcher 1.1.0.RC1
Spring Cloud CLI 1.3.0.RC1

并且,像往常一样,我们欢迎反馈:在 GitHubGitterStack OverflowTwitter 上。

使用 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.RC1</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.RC1'
  }
}

dependencies {
    compile 'org.springframework.cloud:spring-cloud-starter-config'
    compile 'org.springframework.cloud:spring-cloud-starter-eureka'
    ...
}

获取 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

领先一步

VMware 提供培训和认证,以加快您的进度。

了解更多

获得支持

Tanzu Spring 在一个简单的订阅中提供对 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

查看 Spring 社区中所有即将举行的活动。

查看全部