From 87f258059769f89f0eb4eab287fd6c98befd8cdc Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期五, 15 七月 2022 19:42:16 +0800
Subject: [PATCH] 优化代码
---
service-api/src/main/java/com/java110/api/ApiApplicationStart.java | 27 ++++++++++++++++++++++++++-
1 files changed, 26 insertions(+), 1 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 79e94f9..5e400aa 100755
--- a/service-api/src/main/java/com/java110/api/ApiApplicationStart.java
+++ b/service-api/src/main/java/com/java110/api/ApiApplicationStart.java
@@ -16,15 +16,20 @@
package com.java110.api;
import com.java110.core.annotation.Java110ListenerDiscovery;
+import com.java110.core.trace.Java110FeignClientInterceptor;
+import com.java110.core.trace.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.slf4j.LoggerFactory;
+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;
@@ -42,7 +47,9 @@
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
+import javax.annotation.Resource;
import java.nio.charset.Charset;
+import java.util.concurrent.TimeUnit;
/**
@@ -73,6 +80,9 @@
private static Logger logger = LoggerFactory.getLogger(ApiApplicationStart.class);
+ @Resource
+ private Java110RestTemplateInterceptor java110RestTemplateInterceptor;
+
/**
* 瀹炰緥鍖朢estTemplate锛岄�氳繃@LoadBalanced娉ㄨВ寮�鍚潎琛¤礋杞借兘鍔�.
*
@@ -83,6 +93,7 @@
public RestTemplate restTemplate() {
StringHttpMessageConverter m = new StringHttpMessageConverter(Charset.forName("UTF-8"));
RestTemplate restTemplate = new RestTemplateBuilder().additionalMessageConverters(m).build(RestTemplate.class);
+ restTemplate.getInterceptors().add(java110RestTemplateInterceptor);
return restTemplate;
}
@@ -112,6 +123,20 @@
.apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)).build();
}
+
+ @Bean
+ @ConditionalOnBean(Java110FeignClientInterceptor.class)
+ public okhttp3.OkHttpClient okHttpClient(@Autowired
+ Java110FeignClientInterceptor 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