gpt4 book ai didi

java - 何时关闭 Elasticsearch 中的 TransportClient?

转载 作者:行者123 更新时间:2023-12-03 22:52:59 27 4
gpt4 key购买 nike

我想知道在打开和关闭 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();
}

谢谢!

最佳答案

我认为您不必在每次请求后关闭传输客户端。开销太大了。

查看文档 here .

// 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();

您可以在此处看到“启动时”和“关闭时”的注释行。所以基本上这会告诉你什么时候应该调用 client.close().

关于java - 何时关闭 Elasticsearch 中的 TransportClient?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42189854/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com