领先一步
VMware 提供培训和认证,助您加速进步。
了解更多亲爱的Spring社区!
我很高兴地宣布两个适用于Amazon Web Services的 Spring Milestone 版本:Spring Integration for AWS 2.0.0.M1 和 Spring Cloud Stream Binder for AWS Kinesis 1.0.0.M1。
这两个里程碑版本都可以在 Spring Milestone 仓库中获取,并且可以作为 Maven 依赖项使用。
<dependency>
<groupId>org.springframework.integration</groupId>
<artifactId>spring-integration-aws</artifactId>
<version>2.0.0.M1</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-stream-binder-kinesis</artifactId>
<version>1.0.0.M1</version>
</dependency>
2.0 版本是 Spring Integration for AWS Framework 的下一代。它基于 Java 8、Spring Framework & Spring Integration 5.0 以及 Spring Cloud for AWS 2.0。在这个新版本中,我们改进了所有的 MessageHandler 实现,使其扩展通用的 AbstractAwsMessageHandler,并支持 AsyncHandler、failureChannel 和 ErrorMessageStrategy。添加了一组 AwsHeaders.RECEIVED_ 头,以避免当请求消息从上游 AWS Inbound Channel Adapter 到达时,在出站端产生混淆。这在使用需要相同入站和出站绑定的 Spring Cloud Stream “processor-application” 时非常方便。KinesisMessageDrivenChannelAdapter 现在通过 errorChannel 支持错误处理,并且一个新的 KinesisMessageHeaderErrorMessageStrategy 在 ErrorMessage 头中提供了有用的 AwsHeaders.RAW_RECORD 信息。
Spring Cloud Stream Binder for AWS Kinesis 提供了 Spring Cloud Stream 的绑定实现。该实现以 Spring Integration AWS Kinesis Channel Adapters 为基础。以下说明了 Kinesis Binder 实现如何将每个配置的目的地映射到 AWS Kinesis Streams。

与 Apache Kafka 不同,AWS Kinesis 不提供开箱即用的消费者组支持。此功能的支持是作为 MetadataStore 的一部分实现的。KinesisMessageDrivenChannelAdapter 中分片检查点的键为 [CONSUMER_GROUP]:[STREAM]:[SHARD_ID]。默认情况下,Kinesis Binder 使用 DynamoDbMetaDataStore 实现,该实现也如上所述继承自 Spring Integration for AWS 项目。
与 RabbitMQ 和 Apache Kafka 类似,可以覆盖生产者和消费者的绑定配置。它们分别在 KinesisConsumerProperties 和 KinesisProducerProperties 中公开。
非常感谢所有帮助塑造这个项目的 社区成员,他们的宝贵意见和贡献!
欢迎通过适当的沟通渠道提出任何反馈、功能建议、批评、bug 报告和问题。
Spring Integration AWS 项目页面 | Spring Cloud Stream Binder for AWS Kinesis 项目页面 | 帮助 | 聊天