HttpClient 5를 사용한 Elasticsearch Rest5Client 프록시 구성
Rest5Client의 비동기 HTTP 빌더에 중간 프록시를 설정하고 Apache 4와 5 가져오기를 일관되게 유지합니다.
Elasticsearch의 Rest5Client는 구성 콜백을 통해 Apache HttpClient 5 빌더를 노출합니다:
import co.elastic.clients.transport.rest5_client.low_level.Rest5Client;
import org.apache.hc.core5.http.HttpHost;
var proxy = new HttpHost("http", "proxy.example.net", 8080);
var rest = Rest5Client.builder(
new HttpHost("https", "search.example.net", 9200))
.setHttpClientConfigCallback(httpBuilder -> {
httpBuilder.setProxy(proxy);
})
.build();
rest를 애플리케이션의 Elasticsearch 전송 설정에 넘기고 해당 구성 요소가 종료될 때 함께 닫습니다. 검색 호스트는 HTTPS로 유지됩니다. 프록시의 http 스킴은 중간 프록시 연결을 나타냅니다. 공개적으로 접근 가능한 검색 호스트로 가는 허용된 공용 프록시 경로의 경우 HTTP 프록시 목록에서 엔드포인트 후보를 제공합니다. 선택한 프록시가 검색 호스트와 포트를 허용하는지 확인하십시오.
프록시 인증에는 동일한 콜백에서 적절한 범위의 Apache 5 자격 증명 공급자를 연결합니다. Elasticsearch 계정은 별도로 보관하십시오.
콜백은 Consumer를 받습니다. 대체 값을 반환하지 말고 블록 안에서 전달된 빌더를 구성하십시오. org.apache.http를 사용하는 RestHighLevelClient 예제는 이전 세대에 속합니다. Apache 5는 org.apache.hc 패키지를 사용합니다.