java连接es配置(RestHighLevelClient)
EsConfiguration.java
package org.hxl.es;
import java.io.IOException;
import org.apache.http.HttpHost;
import org.apache.http.auth.AuthScope;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.http.impl.client.BasicCredentialsProvider;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestClientBuilder;
import org.elasticsearch.client.RestHighLevelClient;
public class EsConfiguration {
public static void main(String[] args) {
BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
credentialsProvider.setCredentials(
AuthScope.ANY,
new UsernamePasswordCredentials("elastic", "elastic"));
RestClientBuilder builder = RestClient.builder((new HttpHost("192.168.1.134", 19200,"http")));
builder.setHttpClientConfigCallback(httpClientBuilder -> httpClientBuilder.setDefaultCredentialsProvider(credentialsProvider)
.setMaxConnTotal(100)
.setMaxConnPerRoute(20)
.setKeepAliveStrategy((response, context) -> 60000));
builder.setRequestConfigCallback(requestConfigBuilder -> requestConfigBuilder
.setConnectTimeout(5000) // 连接超时时间
.setSocketTimeout(60000));
RestHighLevelClient esClient = new RestHighLevelClient(builder);
try {
if (esClient.ping()){
System.out.println("Connect ES ok!");
}
else {
System.out.println("Connect ES Failed!");
}
} catch (IOException e) {
System.out.println("Connect ES Failed!");
}finally {
try {
esClient.close();
} catch (IOException e){
System.out.println("Connect ES Failed!");
}
}
}
}
浙公网安备 33010602011771号