Spring cloud Spring Cloud AWS SQS SimpleMessageListenerContainerFactory配置用于多个@SQSListener

Spring cloud Spring Cloud AWS SQS SimpleMessageListenerContainerFactory配置用于多个@SQSListener,spring-cloud,Spring Cloud,是否可以定义不同的SimpleMessageListenerContainerFactory@Beans并将其用于不同的@SQSListener?由于线程的基本数量取决于SimpleMessageListenerContainerFactory中设置的最大批量大小,我希望能够为一些@sqslistener配置更低的属性,这些@sqslistener可能正在侦听一个不接收太多消息的队列,而其他@sqslistener则侦听一个包含很多消息的队列,并为这些侦听器提供更多资源。比如说 @Bean pu

是否可以定义不同的SimpleMessageListenerContainerFactory@Beans并将其用于不同的@SQSListener?由于线程的基本数量取决于SimpleMessageListenerContainerFactory中设置的最大批量大小,我希望能够为一些@sqslistener配置更低的属性,这些@sqslistener可能正在侦听一个不接收太多消息的队列,而其他@sqslistener则侦听一个包含很多消息的队列,并为这些侦听器提供更多资源。比如说

@Bean
public SimpleMessageListenerContainerFactory containerFactoryForLargeQueue(final AmazonSQSAsync amazonSqs) {
    SimpleMessageListenerContainerFactory factory = new SimpleMessageListenerContainerFactory();
    factory.setAmazonSqs(amazonSqs);
    factory.setMaxNumberOfMessages(10);
    return factory;
}

@Bean
public SimpleMessageListenerContainerFactory containerFactoryForSmallQueue(final AmazonSQSAsync amazonSqs) {
    SimpleMessageListenerContainerFactory factory = new SimpleMessageListenerContainerFactory();
    factory.setAmazonSqs(amazonSqs);
    factory.setMaxNumberOfMessages(5);
    return factory;
}
然后,根据@SqsListener从其队列接收的消息量,以某种方式配置@SqsListener使用其中一个