宣布 Spring Cloud AWS 3.0.0

发布 | Spencer Gibb | 2023 年 5 月 2 日 | ...

这是 Spring Cloud AWS 维护者的一篇客座文章。

Spring Cloud AWS 3.0.0

Spring Cloud AWS 3.0 是 Spring Cloud AWS 项目的最新版本。该版本使用 AWS SDK for Java v2 对库进行了彻底重写。由于这需要进行重大的重构,我们借此机会重新审视了所有假设和集成模块。因此,我们开发了一个轻量级、灵活、减少麻烦并提供易于使用的抽象的库。

Spring Cloud AWS 3.0 在开发时遵循以下原则

  • Spring Boot“原生”开发者体验 - 合理的默认配置,高度可定制
  • 最小启动时间开销
  • 集成模块相互独立
  • Kotlin 友好(@Nullable 注解)
  • 测试是一等公民 - Spring Cloud AWS 在其自身测试中使用了 Localstack,并且我们使该库易于与 Localstack 结合使用。

该版本的一些关键特性

  • 兼容 Spring Boot 3.0
  • 基于 AWS SDK for Java V2 构建
  • 完全重写的 SQS 集成模块
  • 新的 DynamoDB 集成

文档

强烈建议阅读 Spring Cloud AWS 参考文档 以了解更多信息。

此外,您可以在 Spring Cloud AWS GitHub 仓库 中探索几个集成模块的示例应用。

变更

下面列出了每个集成模块的主要变更

核心

  • 简化了凭据、区域和 AWS 客户端的配置和定制
  • 移除了 XML 配置支持和 `@EnableXXX` 注解
  • 引入了 STS 凭据支持
  • 通过可空性注解改进了 Kotlin 支持

SQS

  • 基于久经考验的 Spring Kafka 架构完全重写
  • 异步监听器
  • 批处理监听器
  • FIFO 队列支持

S3

在 S3 中,我们引入了新的有趣特性,例如

  • S3 对象元数据支持
  • S3Template:方便的方法用于上传和下载文件,以及将 Java 对象持久化到 S3
  • 跨区域 S3 客户端
  • 自动内容类型解析(支持 817 种内容类型)
  • 创建 S3 签名 URL
  • 创建和删除存储桶
  • 多种 S3 OutputStream 实现
    • InMemoryBufferingS3OutputStream
    • DiskBufferingS3OutputStream
    • TransferManagerS3OutputStream

SNS

  • SnsTemplateSnsOperations 提供了方便的 API 用于向 SNS 发送通知
  • SnsSmsTemplate 提供了方便的 API 用于向手机号码发送短信 (SMS)

Secrets Manager

  • 现在只能通过 spring.config.import 加载 Secret
  • 支持 JSON、纯文本和二进制 Secret
  • 支持 Secret 自动重载
  • Secrets Manager 属性源现在支持自定义前缀

Parameter Store

  • 现在只能通过 spring.config.import 加载 Secret
  • 支持属性自动重载

DynamoDB

  • DynamoDbTemplate 是基于 DynamoDB Enhanced Client 构建的用于使用 DynamoDB 的高级 API
  • AWS DAX (DynamoDB Accelerator) 自动配置

Parameter Store

  • 现在只能通过 spring.config.import=aws-parameterstore 加载属性。
  • 引入了自动重载支持
  • 简化了使用自定义 SsmClient

CloudWatch

  • micrometer-registry-cloudwatch2 的自动配置

缺失的集成

Spring Cloud AWS 3.0 不包含对 RDS、ElastiCache、EC2 和 CloudFormation 的集成。

订阅 Spring 新闻通讯

订阅 Spring 新闻通讯保持联系

订阅

领先一步

VMware 提供培训和认证,助您快速进步。

了解更多

获取支持

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

了解更多

即将到来的活动

查看 Spring 社区的所有即将到来的活动。

查看全部