From 30a4683b5af8525df02686f8cdd11d3c27376e2e Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期六, 19 二月 2022 18:41:00 +0800
Subject: [PATCH] 优化 拦截器工鞥呢

---
 service-api/src/main/java/com/java110/api/ApiApplicationStart.java |   19 +++++++++++++++++++
 1 files changed, 19 insertions(+), 0 deletions(-)

diff --git a/service-api/src/main/java/com/java110/api/ApiApplicationStart.java b/service-api/src/main/java/com/java110/api/ApiApplicationStart.java
index cc27996..f7fc850 100755
--- a/service-api/src/main/java/com/java110/api/ApiApplicationStart.java
+++ b/service-api/src/main/java/com/java110/api/ApiApplicationStart.java
@@ -16,16 +16,20 @@
 package com.java110.api;
 
 import com.java110.core.annotation.Java110ListenerDiscovery;
+import com.java110.core.aop.Java110FeignClientAop;
 import com.java110.core.aop.Java110RestTemplateInterceptor;
 import com.java110.core.client.RestTemplate;
 import com.java110.core.event.service.api.ServiceDataFlowEventPublishing;
 import com.java110.core.log.LoggerFactory;
 import com.java110.service.init.ServiceStartInit;
 import io.swagger.annotations.ApiOperation;
+import okhttp3.ConnectionPool;
 import org.slf4j.Logger;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
 import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
 import org.springframework.boot.web.client.RestTemplateBuilder;
 import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
@@ -45,6 +49,7 @@
 
 import javax.annotation.Resource;
 import java.nio.charset.Charset;
+import java.util.concurrent.TimeUnit;
 
 
 /**
@@ -118,6 +123,20 @@
                 .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)).build();
     }
 
+
+    @Bean
+    @ConditionalOnBean(Java110FeignClientAop.class)
+    public okhttp3.OkHttpClient okHttpClient(@Autowired
+                                                     Java110FeignClientAop okHttpLoggingInterceptor){
+        okhttp3.OkHttpClient.Builder ClientBuilder = new okhttp3.OkHttpClient.Builder()
+                .readTimeout(30, TimeUnit.SECONDS) //璇诲彇瓒呮椂
+                .connectTimeout(10, TimeUnit.SECONDS) //杩炴帴瓒呮椂
+                .writeTimeout(60, TimeUnit.SECONDS) //鍐欏叆瓒呮椂
+                .connectionPool(new ConnectionPool(10 /*maxIdleConnections*/, 3, TimeUnit.MINUTES))
+                .addInterceptor(okHttpLoggingInterceptor);
+        return ClientBuilder.build();
+    }
+
     /**
      * 鍒涘缓璇PI鐨勫熀鏈俊鎭紙杩欎簺鍩烘湰淇℃伅浼氬睍鐜板湪鏂囨。椤甸潰涓級
      * 璁块棶鍦板潃锛歨ttp://椤圭洰瀹為檯鍦板潃/swagger-ui.html

--
Gitblit v1.8.0