[JAVA] Paramètre Spring RestTemplate Config Timeout

Spring RedisTemplate est défini sur 2000 ms en prévision d'un délai d'expiration, mais il peut ne pas fonctionner et le traitement peut se bloquer. Vérifier s'il peut être effacé en ajoutant des paramètres, sinon, expirer par vous-même. .. ..

· Configuré setConnectionRequestTimeout:10000msec setReadTimeout:2000msec

·ajouter à? setConnectionRequestTimeout → Je n'ai pas pu vérifier car je n'avais pas assez de temps

・ Comment faire une pause par vous-même Cette fois, c'était Async (méthode utilisant Spring @Async), alors définissez return to Future Utilisez également RetryTemplate pour répondre avec le sentiment suivant

RetryTemplate


RetryTemplate retryTemplate = new RetryTemplate();

Map<Class<? extends Throwable>, Boolean> exceptions = Maps.newHashMap();
exceptions.put(TimeoutException.class, true);
retryTemplate.setRetryPolicy(new SimpleRetryPolicy(10, exceptions));

FixedBackOffPolicy backOffPolicy = new FixedBackOffPolicy();
backOffPolicy.setBackOffPeriod(10);
retryTemplate.setBackOffPolicy(backOffPolicy);

Future<T>(getResult)


Future<T> future = async.execute();
T result = retryTemplate.execute(new RetryCallback<T, TimeoutException>() { 
    @Override
    public T doWithRetry(RetryContext context) throws TimeoutException {
        if (future.isDone()) {
            return future.get();
        }
        throw new TimeoutException();
    }
});

référence ・ API https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/http/client/HttpComponentsClientHttpRequestFactory.html

Recommended Posts

Paramètre Spring RestTemplate Config Timeout
Paramètre Spring RedisTemplate Config Timeout
Méthode de configuration de la connexion Spring + MyBatis
Configuration Java avec Spring MVC
Priorité de réglage externe Spring Boot
[Rails] Paramètre de délai d'expiration de session dans l'appareil
Paramètre de délai d'expiration de l'API du client HTTP Java
Intégration du serveur de configuration dans Spring Cloud Config