spring-cloud com RestTemplate // Ribbon / Eureka - tente novamente quando o servidor não estiver disponível

Consegui obter com êxito o meu cliente RestTemplate para descobrir o serviço remoto usando o Eureka e encaminhar chamadas para ele usando o Ribbon, conforme descrito na documentação. Basicamente, era apenas uma questão de adicionar as seguintes anotações da minha classe Application e deixar a mágica do Spring-Boot fazer o resto:

@Configuration
@ComponentScan
@EnableAutoConfiguration
@EnableDiscoveryClient

(PS: você notou que estou usando o spring-cloud: 1.0.0-SNAPSHOT-BUILD e não 1.0.0.M3 - mas isso não parece afetar meu problema).

Quando duas instâncias de serviço são iniciadas, o cliente restante do modelo carrega com êxito solicitações de equilíbrio entre as duas. No entanto, o cliente não retornará à segunda instância se a primeira for interrompida antes que o balanceador de carga Eureka observe, em vez disso, uma exceção será lançada.

Daí minha pergunta: existe uma maneira de configurar a pilha RestTemplate / Ribbon / Eureka para repetir automaticamente a chamada para outra instância, se a que selecionou o primeiro local não estiver disponível? O proxy Zuul e os clientes simulados fazem isso "pronto para uso", então acredito que a biblioteca possui os recursos necessários ...

Alguma idéia / dica?

Thx, / Bertrand

questionAnswers(2)

yourAnswerToTheQuestion