使用 Spring AWS Integration 检查点

Checkpointing with Spring AWS Integration

根据 Spring 发行说明,spring-integration-aws.1.1.0.M1 不包括 DynamoDB MetaDataStore 实现。仍然有 ConcurrentMetadataStore class 这是一个基于键值的存储,基于实现,我想它映射了读取最新序列号的流。但它不使用任何数据存储来检索检查点。

我正在使用 spring 集成来消耗运动并且需要实施检查点。我想知道我是否需要通过连接到 DynamoDB 并始终更新检查点来手动执行此操作,或者是否有另一种使用 spring 框架来执行此操作的方法?

P.S:我无法使用 Spring Cloud KinesisBinderConfiguration,因为我动态使用来自可配置流列表的事件。

谢谢

如果您不是在谈论 Spring Cloud Stream 和 AWS Kinesis Binder 实施,那么我没有看到任何阻止您将解决方案升级到 Spring Integration AWS 2.0 并继续已提供的 DynamoDbMetaDataStore.

或者,如果这对您来说很难迁移到 Spring 集成 5.0,那么您可以考虑 copy/paste 实现自己的 class并将其注入 KinesisMessageDrivenChannelAdapter: https://github.com/spring-projects/spring-integration-aws/blob/master/src/main/java/org/springframework/integration/aws/metadata/DynamoDbMetaDataStore.java

虽然它在 1.1.0.RELEASE 中确实可用 - 我看不出您坚持使用 1.1.0.M1 的理由:https://spring.io/blog/2017/11/27/spring-integration-for-aws-1-1-ga-available