Ore*_*ron 3 java elasticsearch
我想知道打开和关闭 java elasticsearch 客户端时的好做法是什么。我是否在每个请求之间打开和关闭它?或者我可以对所有请求使用单个客户端实例吗?
private Client client;
@PostConstruct
public void init() {
try {
client = new PreBuiltTransportClient(Settings.EMPTY)
.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName(host), port));
} catch (UnknownHostException e) {
LOGGER.error("Unable to create ESClient : {}", e);
}
}
@PreDestroy
public void destroy() {
client.close();
}
Run Code Online (Sandbox Code Playgroud)
谢谢 !
我认为您不必在每次请求后关闭传输客户端。这将是太多的开销。
请参阅此处的文档。
// on startup
TransportClient client = new PreBuiltTransportClient(Settings.EMPTY)
.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("host1"), 9300))
.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("host2"), 9300));
// on shutdown
client.close();
Run Code Online (Sandbox Code Playgroud)
在那里您可以看到“启动时”和“关闭时”的注释行。所以基本上这会告诉你什么时候应该调用client.close().
| 归档时间: |
|
| 查看次数: |
2432 次 |
| 最近记录: |