我在Java中使用嵌入式弹性作为Spring应用程序的一部分,如下所示:
Node node;
@SuppressWarnings("unused")
@Bean
public Client es() {
node = nodeBuilder().local(true).node();
Client client = node.client();
boolean indexExists = client.admin().indices().prepareExists(INDEX).execute().actionGet().isExists();
if (!indexExists) {
client.admin().indices().prepareCreate(INDEX).execute().actionGet();
}
return client;
}
我尝试与NodeJS做类似的事情,因此我不必单独创建弹性搜索实例(超低流量)。在Spring案例中,我只设置了.local(true)并且它很好用。我无法在Node中找到任何类似的选项。
这就是我现在正在做的事情
var elasticsearch = require('elasticsearch');
var client = new elasticsearch.Client({
// log: 'trace',
host: 'localhost:9200'
});
它适用于外部服务器。
答案 0 :(得分:1)
您不能在NodeJS中拥有Elasticsearch Node Client。第二种方法是要走的路。