From bf51f8b7cc559b27ef700e7d35b6bf35cd16b1b4 Mon Sep 17 00:00:00 2001 From: Raja Kolli Date: Sun, 7 Apr 2024 03:48:06 +0000 Subject: [PATCH] feat: using customizer to increase read and connect timeout --- .../config/RestClientBuilderConfig.java | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/rag/rag-springai-ollama-llm/src/main/java/com/learning/ai/llmragwithspringai/config/RestClientBuilderConfig.java b/rag/rag-springai-ollama-llm/src/main/java/com/learning/ai/llmragwithspringai/config/RestClientBuilderConfig.java index 726829e..9407e24 100644 --- a/rag/rag-springai-ollama-llm/src/main/java/com/learning/ai/llmragwithspringai/config/RestClientBuilderConfig.java +++ b/rag/rag-springai-ollama-llm/src/main/java/com/learning/ai/llmragwithspringai/config/RestClientBuilderConfig.java @@ -1,23 +1,20 @@ package com.learning.ai.llmragwithspringai.config; import java.time.Duration; +import org.springframework.boot.web.client.ClientHttpRequestFactories; +import org.springframework.boot.web.client.ClientHttpRequestFactorySettings; +import org.springframework.boot.web.client.RestClientCustomizer; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.http.client.JdkClientHttpRequestFactory; -import org.springframework.web.client.RestClient; @Configuration(proxyBeanMethods = false) public class RestClientBuilderConfig { @Bean - RestClient.Builder restClientBuilder(JdkClientHttpRequestFactory jdkClientHttpRequestFactory) { - return RestClient.builder().requestFactory(jdkClientHttpRequestFactory); - } - - @Bean - JdkClientHttpRequestFactory jdkClientHttpRequestFactory() { - JdkClientHttpRequestFactory jdkClientHttpRequestFactory = new JdkClientHttpRequestFactory(); - jdkClientHttpRequestFactory.setReadTimeout(Duration.ofMinutes(5)); - return jdkClientHttpRequestFactory; + public RestClientCustomizer restClientCustomizer() { + return restClientBuilder -> restClientBuilder.requestFactory( + ClientHttpRequestFactories.get(ClientHttpRequestFactorySettings.DEFAULTS + .withConnectTimeout(Duration.ofSeconds(60)) + .withReadTimeout(Duration.ofMinutes(5)))); } }