Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
spring rabbitmq自动恢复启用_Spring_Spring Rabbit - Fatal编程技术网

spring rabbitmq自动恢复启用

spring rabbitmq自动恢复启用,spring,spring-rabbit,Spring,Spring Rabbit,因为SpringRabbit不支持自动恢复,我们可以使用这个bean进行SpringRabbitMQ自动恢复吗 @Bean public StatefulRetryOperationsInterceptor interceptor() { return RetryInterceptorBuilder.stateful() .maxAttempts(5) .backOffOptions(1000, 2.0, 10000) .build(); } 你

因为SpringRabbit不支持自动恢复,我们可以使用这个bean进行SpringRabbitMQ自动恢复吗

@Bean
public StatefulRetryOperationsInterceptor interceptor() { 
     return RetryInterceptorBuilder.stateful()  
    .maxAttempts(5)
    .backOffOptions(1000, 2.0, 10000) 
    .build();   
}

你的问题是什么还不清楚

retry@Bean用于在应用程序侦听器无法处理消息时重试

恢复设置用于在与代理的连接丢失时恢复连接/通道

Spring AMQP有自己的重新连接(
recoveryInterval
在侦听器容器上),因此实际上不需要设置rabbit客户端选项。使用Spring AMQP<1.4.0时,必须设置这些选项


如果您使用的是Spring AMQP 1.4.0或更高版本,则可以在基础连接工厂上设置这些,但这并不是真的必要,因为Spring AMQP将为您重新连接。

谢谢gary russell,我的问题是,我有一个运行了很多天的服务。该服务永远不会更改。但所有其他服务都会更改。但该服务会在某一时间失去与rabbitmq的连接,但rabbitmq仍在运行。我可以做些什么来避免这种情况连接丢失如果连接丢失,则消息将无法恢复。恢复意味着消息将被发送回队列-这是默认行为。抛出连接异常后,RabbitMQ端的消息将标记为未确认,并将发送给另一个使用者
factory.setAutomaticRecoveryEnabled(true);
factory.setNetworkRecoveryInterval(10000);