【问题标题】:Spring Integration AWS Kinesis Message HanlderSpring 集成 AWS Kinesis 消息处理程序
【发布时间】:2021-09-19 20:14:55
【问题描述】:
KinesisMessageHandler 类接受输入为 AmazonKinesisAsync 的构造函数。 AmazonKinesisAsync 是用于异步访问 Kinesis 的接口。这是否意味着对 KinesisMessageHandler 没有同步支持?
另外,KinesisMessageHandler 中 setSync 方法的相关性是什么?
【问题讨论】:
标签:
spring-integration
spring-integration-aws
【解决方案1】:
AmazonKinesisAsync 实际上只是依赖于 Java 的 Future,它可以通过其 get() 方法轻松转换为同步,阻止行为。这就是KinesisMessageHandler 状态下的setSync() 的用途。将AmazonKinesisAsync 作为输入并不意味着我们不能进行同步操作。如果我们对 AmazonKinesis 合约进行相反的处理,我们将无法执行异步操作。