amazon sqs 대기열의 메시지와 지금까지의 작업 벌금을 소모하도록 통합 플로우를 설정하려고합니다. 하지만 분당 초당 메시지 수를 줄이려고합니다. 예 : 분당 20 개의 메시지. 여기 스프링 통합을 사용하여 sqs 대기열 사용량을 조절하는 방법
내 SQL 리스너 콩@Bean
public MessageProducer mySqsMessageDrivenChannelAdapter() {
SqsMessageDrivenChannelAdapter adapter = new SqsMessageDrivenChannelAdapter(this.amazonSqs, queueName);
adapter.setMessageDeletionPolicy(SqsMessageDeletionPolicy.ON_SUCCESS);
adapter.setVisibilityTimeout(TIMEOUT_VISIBILITY);
adapter.setWaitTimeOut(TIMEOUT_MESSAGE_WAIT);
adapter.setMaxNumberOfMessages(prefetch);
adapter.setOutputChannel(processMessageChannel());
return adapter;
}
당신이, 내가 여론 조사 당 가져올 메시지의 최대 수를 설정하고있어,하지만 어떻게 여론 조사 사이의 지연 시간을 설정할 볼 수 있듯이의 정의인가?
일반 jms 큐에서 사용자 지정 폴러를 사용하여 JMS.inboundAdapter를 사용할 수 있지만 SqsMessageDrivenChannelAdapter를 사용하면 폴링 타이머 값을 설정할 수 없습니다.
어쩌면 SqsMessageDrivenChannelAdapter 이외의 MessageProducer를 사용할 수 있습니까?
sqs를 사용하여 JMS.inboundAdapter를 설정할 수 있습니까?
솔루션은 https://stackoverflow.com/questions/29667321/polling-interval-for-jms-messagelistener-with-sqs-provider?rq=1에서 확인할 수 있습니다. 이 경우이 질문은 중복 된 것으로 간주 될 수 있지만 여기서 핵심은 스프링 통합을 사용한다는 것입니다. 나는 그것을 해결할 수있는 해결책을 제시 할 것입니다. –