URL-адрес балансировщика нагрузки Elasticsearch с использованием Java API - PullRequest
0 голосов
/ 29 мая 2018

Мы используем высокоуровневый клиент Java Rest для вызова узлов эластичного поиска.

Теперь мы добавили балансировщик нагрузки и включили SSL.Мы не можем получить доступ к URL балансировщика нагрузки через клиент Rest.Он выдает ошибку и не может найти решение, например, как вызвать URL-адрес балансировщика нагрузки через Java API.

Может кто-нибудь помочь с этим?

Код:

        RestHighLevelClient client = new RestHighLevelClient(
            RestClient.builder(new HttpHost("hostname")));
    SearchRequest searchRequest = new SearchRequest("testCollection");
    SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
    sourceBuilder.query(QueryBuilders.queryStringQuery("test"));
    searchRequest.source(sourceBuilder);
    try {
        SearchResponse searchResponse=client.search(searchRequest);
        String response = searchResponse.toString();
        System.out.println("search response :"+ response);
    }
    catch (IOException e ) {
        e.printStackTrace();
    }
    finally {
        try {
            client.close();
        } catch (IOException e) {
            System.out.println("error while closing");
            e.printStackTrace();
        }
    }

Ошибка:

 java.io.IOException: An existing connection was forcibly closed by the remote host
    at sun.nio.ch.SocketDispatcher.read0(Native Method)
    at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:43)
    at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223)
    at sun.nio.ch.IOUtil.read(IOUtil.java:197)
    at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:380)
    at org.apache.http.nio.reactor.ssl.SSLIOSession.receiveEncryptedData(SSLIOSession.java:451)
    at org.apache.http.nio.reactor.ssl.SSLIOSession.isAppInputReady(SSLIOSession.java:505)
    at org.apache.http.impl.nio.reactor.AbstractIODispatch.inputReady(AbstractIODispatch.java:120)
    at org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:162)
    at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:337)
    at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:315)
    at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:276)
    at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104)
    at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:588)`enter code here`
    at java.lang.Thread.run(Thread.java:748)

Спасибо!

...