Tout d'abord, la réessayer ici n'est pas une réessayer après une erreur signalée, mais une réessayer vers une autre instance après que le client d'équilibrage de charge constate que l'instance de demande distante n'est pas disponible.
@ Bean @ loadBalancedRestTemplate RestTemplate () {httpComponentSclientHttpRequestFactory httpRequestFactory = new httpComponentSclientHttPrequestFactory (); httpRequestFactory.SetReadTimeout (5000); httprequestfactory.setConnectTimeout (5000); Renvoie un nouveau Restemplate (httpRequestFactory);}feindre le mécanisme de réchauffement
feign réessaye la configuration via le rérient emballé par lui-même, et la valeur par défaut est 5 fois
package feign; import static java.util.concurrent.timeUnit.seconds; / ** * cloné pour chaque invocation à {@Link Client # Execute (request, feign.request.options)}. * Les implémentations peuvent garder l'état pour déterminer si les opérations de réessayer doivent se poursuivre ou non. * / Interface publique Reryer étend Clonable {/ ** * Si Retry est autorisé, retournez (peut-être après le sommeil). Sinon, propager l'exception. * / void continuorPropagate (RepriableException E); Retryer clone (); La classe statique publique par défaut implémente Retryer {private final int maxAtTempts; Finale privée longue période; Final privé long Maxperiod; int tentative; Sleptformmillis long; public default () {this (100, seconde.tomiillis (1), 5); } Public Default (longue période, long maxperiod, int maxAtTempts) {this.period = period; this.maxperiod = maxperiod; this.maxattempts = maxattempts; this.atempt = 1; } feindre annuler la réessayer
@Bean Retryer FeigRetRyer () {return reryer.never_retry; } Figer le paramètre de délai d'expiration de la demande
@ BeanRequest.options requestOptions (configurableenvironment Env) {int rubBonReadTimeout = env.getProperty ("rubbon.readtimeout", int.class, 6000); int rubbonConnectionTimeout = env.getProperty ("rubbon.connectTimeout", int.class, 3000); Renvoie une nouvelle demande.options (rubbonConnectionTimeout, rubBbonRtimeout);}Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.