【发布时间】:2017-09-29 16:04:41
【问题描述】:
Here 是 spring-integration-aws 项目。他们提供了有关入站通道适配器的示例:
@SpringBootApplication
public static class MyConfiguration {
@Autowired
private AmazonSQSAsync amazonSqs;
@Bean
public PollableChannel inputChannel() {
return new QueueChannel();
}
@Bean
public MessageProducer sqsMessageDrivenChannelAdapter() {
SqsMessageDrivenChannelAdapter adapter = new SqsMessageDrivenChannelAdapter(this.amazonSqs, "myQueue");
adapter.setOutputChannel(inputChannel());
return adapter;
}
}
好的,Channel 和 SqsMessageDrivenChannelAdapter 已定义,但接下来是什么?假设我有这样的spring bean:
import com.amazonaws.services.sqs.model.Message;
@Component
public class MyComponent {
public void onMessage(Message message) throws Exception {
//handle sqs message
}
}
- 如何
tellspring 将所有来自myQueue的消息传递给这个 组件? - 是否有任何额外的配置来处理消息
一?例如在收到消息
SQS后将它们标记为 处理并且它们对其他客户端不可见,因此它是 只需要获取一条消息,接下来处理 nad 获取一条。做 默认情况下启用此行为?
【问题讨论】:
标签: java spring amazon-web-services spring-integration spring-integration-aws