使用java api调用elasticsearch服务时由于es所在服务器内存不足所以java api不能放在es所在服务器进行本地访问,又因为两台服务器内网不通,所以想到用域名访问es服务由nginx转发。
所以创建请求客户端的代码修改为
public RestHighLevelClient restClient() {
RestHighLevelClient restClient = new RestHighLevelClient(RestClient.builder(
HttpHost.create("https://域名")).setPathPrefix("nginx转发用的路由").
setMaxRetryTimeoutMillis(10*60*1000). //设置超时时间
setHttpClientConfigCallback(
new RestClientBuilder.HttpClientConfigCallback() {
@Override
public HttpAsyncClientBuilder customizeHttpClient(HttpAsyncClientBuilder httpAsyncClientBuilder) {
RequestConfig.Builder requestConfigBuilder = RequestConfig.custom()
.setConnectTimeout(10*6