我使用嵌入式弹性作为 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 做类似的事情,这样我就不必单独创建 Elasticsearch 实例(超低流量)。在 Spring 的情况下,我只需设置 .local(true) 就可以了。我在 Node 中找不到类似的选项。
这就是我现在正在做的事情
var elasticsearch = require('elasticsearch');
var client = new elasticsearch.Client({
// log: 'trace',
host: 'localhost:9200'
});
对于外部服务器来说它工作得很好。
最佳答案
NodeJS 中无法使用 Elasticsearch Node 客户端。第二种方法是要走的路。
关于node.js - 带有 NodeJS 的嵌入式 Elastic,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34421296/