为什么弹性搜索的TransportClient()
默认初始化比初始化jest客户端花费的时间多得多?
TransportClient代码:
private static Client client = new TransportClient()
.addTransportAddress(
new InetSocketTransportAddress("localhost", 9200)
);
jest client的代码:
JestClientFactory factory = new JestClientFactory();
factory.setHttpClientConfig(new HttpClientConfig.Builder("http://localhost:9200")
.multiThreaded(true)
.build());
client = factory.getObject();
Jest客户端很轻松。但是我需要一些具有elasticsearch java客户端的扩展功能,但没有jest客户端。
是否可以通过配置减少TransportClient的初始化时间?为什么需要花费太多时间?
P.S。在Mac 16 GB的RAM上,TransportClient的初始化大约需要6秒以上。
请注意,我不是只在代码中初始化客户端一次(使用静态和/或线程安全单例)