Spring Boot: как установить тайм-аут Async при развертывании на внешний серверJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Spring Boot: как установить тайм-аут Async при развертывании на внешний сервер

Сообщение Anonymous »

При использовании встроенного Tomcat для развертывания приложения Spring Boot я установил асинхронный тайм-аут следующим образом:

Код: Выделить всё

@Bean
public EmbeddedServletContainerFactory servletContainer() {
TomcatEmbeddedServletContainerFactory factory = new TomcatEmbeddedServletContainerFactory();
factory.addConnectorCustomizers(new TomcatConnectorCustomizer() {

@Override
public void customize(Connector connector) {
connector.setAsyncTimeout(60000);
}
});
return factory;
}
Но как добиться того же при развертывании на внешнем сервере, например, вебсфере?

Пробовал использовать свойство:

spring.mvc.async.request-timeout=600000

Но это не дало никакого эффекта.

Изменить:

Я попробовал реализовать AsyncConfigurer согласно предложению Андрея. Но это не сработало так, как ожидалось. Ниже приведен мой класс конфигурации:

Код: Выделить всё

@SpringBootApplication
@EnableAsync
public class Application implements AsyncConfigurer {

public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}

@Override
public Executor getAsyncExecutor() {
Executor executor = new ThreadPoolExecutor(10, 20, 60, TimeUnit.SECONDS, new ArrayBlockingQueue(10),
new ThreadPoolExecutor.AbortPolicy());
return executor;
}

@Override
public AsyncUncaughtExceptionHandler getAsyncUncaughtExceptionHandler() {
// TODO Auto-generated method stub
return new SimpleAsyncUncaughtExceptionHandler();
}
}
Я указал время ожидания 60 секунд, но при попытке этой конфигурации время ожидания запроса истекло через 30 секунд. Использовал RestClient.

Что-то мне не хватает?

Подробнее здесь: https://stackoverflow.com/questions/400 ... nal-server
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»