Erstens ist der Wiederholung hier kein Wiederholung, nachdem ein Fehler gemeldet wurde, sondern eine Wiederholung einer anderen Instanz, nachdem der Client des Lastausgleichs feststellt, dass die Remote -Request -Instanz nicht verfügbar ist.
@Bean@loadBalancedRestTemplate rastTemplate () {httpcomponentsClientHttpRequestFactory httprequestFactory = new httpcomponentsClientHttpRequestFactory (); httprequestFactory.setReadTimeout (5000); httprequestFactory.setConnectTimeout (5000); Neue RastTemplate zurückgeben (httprequestFactory);}Mechanismus wiederholen
Tenden Sie die Konfiguration durch die Wiederholung von Retyryer, die von sich selbst verpackt sind, und die Standardeinstellung beträgt das 5 -fache
Paket vorliegen; statische java.util.concurrent.timeUnit.seconds;/*** für jeden Aufruf zu {@link client#execute (Anfrage, Feign.Request.Options)} kloniert. * Implementierungen können den Zustand behalten, um festzustellen, ob der Wiederholungsvorgang fortgesetzt werden sollte oder nicht. * /public interface Retyryer erweitert klonbar { /*** Wenn das Wiederieren zulässig ist, kehren Sie zurück (möglicherweise nach dem Schlafengehen). Ansonsten die Ausnahme verbreiten. */ void continororPropagate (Wiederholungsabnahme E); Wiederholung Clone (); public static class Standard implementiert RETRYER {private endgültige int maxattemptes; private endgültige lange Zeit; privates Final Long Maxperiode; int Versuch; Langschlafenformillis; public default () {this (100, Seconds.tomillis (1), 5); } public Standard (langer Zeit, langer Maxperiode, int maxattemptes) {this.period = Periode; this.maxPeriod = maxperiod; this.maxattempts = maxattemptes; this.attempt = 1; } Tenden Sie vor Wiederholung ab
@Bean Retyryer FeignRetryer () {return retyryer.never_retry; } Timeout -Einstellung anfordern
@BeanRequest.options Requestoptions (configurableDenvironment env) {int RibbonreadTimeout = env.getProperty ("Ribbon.ReadTimeout", int.Class, 6000); int ribbonConnectionTimeout = env.getProperty ("Ribbon.ConnectTimeout", int.Class, 3000); RECHTEN SIE NEUE ANFAHREN.OPTIONS (RIBBONCONNECTIONTimeOut, RibbonReadTimeout);};}Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.