게시자와 게시자가 시작됩니다. 이제는 소비자가 시작하고 문제는 메시지가 준비된 대기열에서 메시지가 다시 전달 된 채로 대기열로 이동한다는 것입니다 나는 내가 ACK가 아닌 소비자 재시작에 보낼 경우에만 재 전달 또는 시작으로 표시해야합니다입니다 원하는 avoid.So 할토끼 대기열에서 준비되지 않은 큐로 이동하는 토끼 mQ 메시지
구성 :
@Bean
public org.springframework.amqp.rabbit.connection.Connection mqConnection() {
CloudFactory cloudFactory = new CloudFactory();
Cloud cloud = cloudFactory.getCloud();
return cloud.getServiceConnector("mqservicename", ConnectionFactory.class,
null).createConnection();
}
@Bean
public StatefulRetryOperationsInterceptor interceptor() {
return RetryInterceptorBuilder.stateful().retryOperations(retryTemplate()).recoverer(new RejectAndDontRequeueRecoverer())
.build();
}
@Bean
public SimpleMessageListenerContainer listenerContainer() {
SimpleMessageListenerContainer container = new SimpleMessageListenerContainer();
container.setMessageListener(new MessageListenerAdapter());
container.setAdviceChain(new Advice[] {
interceptor()
});
return container;
}
@Bean
public RetryTemplate retryTemplate(){
Map map=new HashMap<Class<? extends Throwable>, Boolean>();
map.put(CustomException.class, true);
RetryTemplate retryTemplate=new RetryTemplate();
retryTemplate.setRetryPolicy(new SimpleRetryPolicy(3,map));
return retryTemplate;
}
메시지를 확인하겠습니까? – cantSleepNow
그래, 나 was.Gows 코멘트와 함께 나는 그것을 지키고 위의 구성으로 시도했다. 그러나 그것은 단지 1 번만 시도하고 3을 제공하지 않는다. – user