mirror of
http://192.168.1.205:9980/cf_devdept2/cf_imes_server.git
synced 2026-08-14 13:42:07 +08:00
esclient初始化参数调整
This commit is contained in:
+9
-3
@@ -19,6 +19,7 @@ import org.apache.http.client.config.RequestConfig;
|
|||||||
import org.apache.http.conn.ssl.NoopHostnameVerifier;
|
import org.apache.http.conn.ssl.NoopHostnameVerifier;
|
||||||
import org.apache.http.impl.client.BasicCredentialsProvider;
|
import org.apache.http.impl.client.BasicCredentialsProvider;
|
||||||
import org.apache.http.impl.nio.client.HttpAsyncClientBuilder;
|
import org.apache.http.impl.nio.client.HttpAsyncClientBuilder;
|
||||||
|
import org.apache.http.impl.nio.reactor.IOReactorConfig;
|
||||||
import org.apache.http.ssl.SSLContextBuilder;
|
import org.apache.http.ssl.SSLContextBuilder;
|
||||||
import org.apache.http.ssl.SSLContexts;
|
import org.apache.http.ssl.SSLContexts;
|
||||||
import org.elasticsearch.client.RestClient;
|
import org.elasticsearch.client.RestClient;
|
||||||
@@ -41,6 +42,7 @@ import java.security.KeyStore;
|
|||||||
import java.security.KeyStoreException;
|
import java.security.KeyStoreException;
|
||||||
import java.security.NoSuchAlgorithmException;
|
import java.security.NoSuchAlgorithmException;
|
||||||
import java.security.cert.CertificateException;
|
import java.security.cert.CertificateException;
|
||||||
|
import java.time.Duration;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -135,9 +137,9 @@ public class ChenfengElasticsearchAutoConfiguration {
|
|||||||
// 设置账号密码、连接信息
|
// 设置账号密码、连接信息
|
||||||
HttpAsyncClientBuilder httpAsyncClientBuilder = httpClientBuilder
|
HttpAsyncClientBuilder httpAsyncClientBuilder = httpClientBuilder
|
||||||
.setDefaultRequestConfig(RequestConfig.custom()
|
.setDefaultRequestConfig(RequestConfig.custom()
|
||||||
.setConnectTimeout(properties.getConnectionTimeout().toSecondsPart())
|
.setConnectTimeout((int) properties.getConnectionTimeout().toMillis())
|
||||||
.setSocketTimeout(properties.getSocketTimeout().toSecondsPart())
|
.setSocketTimeout((int) properties.getSocketTimeout().toMillis())
|
||||||
.setConnectionRequestTimeout(properties.getConnectionRequestTimeout().toSecondsPart())
|
.setConnectionRequestTimeout((int) properties.getConnectionRequestTimeout().toMillis())
|
||||||
.build());
|
.build());
|
||||||
if (ObjectUtil.isNotNull(credentialsProvider)) {
|
if (ObjectUtil.isNotNull(credentialsProvider)) {
|
||||||
httpAsyncClientBuilder.setDefaultCredentialsProvider(credentialsProvider);
|
httpAsyncClientBuilder.setDefaultCredentialsProvider(credentialsProvider);
|
||||||
@@ -146,6 +148,10 @@ public class ChenfengElasticsearchAutoConfiguration {
|
|||||||
// 开启ssl配置连接证书
|
// 开启ssl配置连接证书
|
||||||
httpAsyncClientBuilder.setSSLContext(buildSSLContext(properties)).setSSLHostnameVerifier(NoopHostnameVerifier.INSTANCE);
|
httpAsyncClientBuilder.setSSLContext(buildSSLContext(properties)).setSSLHostnameVerifier(NoopHostnameVerifier.INSTANCE);
|
||||||
}
|
}
|
||||||
|
// 手动开启keepalive
|
||||||
|
httpAsyncClientBuilder.setDefaultIOReactorConfig(IOReactorConfig.custom().setSoKeepAlive(true).build());
|
||||||
|
// 手动设置保活时长
|
||||||
|
httpAsyncClientBuilder.setKeepAliveStrategy(((response, context) -> Duration.ofMinutes(5).toMillis()));
|
||||||
return httpAsyncClientBuilder;
|
return httpAsyncClientBuilder;
|
||||||
};
|
};
|
||||||
return RestClient.builder(toHttpHost(properties.getUris(), properties.isSecurityHttpSslEnable())).setHttpClientConfigCallback(httpClientConfigCallback).build();
|
return RestClient.builder(toHttpHost(properties.getUris(), properties.isSecurityHttpSslEnable())).setHttpClientConfigCallback(httpClientConfigCallback).build();
|
||||||
|
|||||||
+1
-1
@@ -25,7 +25,7 @@ public class EsProperties {
|
|||||||
/**
|
/**
|
||||||
* Connection timeout used when communicating with Elasticsearch.
|
* Connection timeout used when communicating with Elasticsearch.
|
||||||
*/
|
*/
|
||||||
private Duration connectionTimeout = Duration.ofSeconds(10);
|
private Duration connectionTimeout = Duration.ofSeconds(5);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Socket timeout used when communicating with Elasticsearch.
|
* Socket timeout used when communicating with Elasticsearch.
|
||||||
|
|||||||
Reference in New Issue
Block a user