弹性搜索TransportClient

ush*_*sha 6 java elasticsearch

我正在使用ElasticSearchJava客户端来查询弹性搜索.我每次打电话时都在初始化传输客户端.这是正确的方法还是应该在应用程序启动期间初始化一次并在关闭时关闭它.

以下是初始化客户端的代码

 Settings settings = ImmutableSettings.settingsBuilder().put("cluster.name", Config.getEsClusterName()).put("client.transport.ignore_cluster_name", true).build();
 Client esClient = new TransportClient(settings).addTransportAddress(new InetSocketTransportAddress(Config.getEsHost(), Config.getEsPort()));
Run Code Online (Sandbox Code Playgroud)

ppe*_*rcy 20

elasticsearch Java客户端是多线程的,每个新实例都有很大的开销.

这应该在程序开始时实例化一次,并在所有调用者之间共享.

最好的祝福