日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Elasticsearch教程elasticsearch Client创建

發布時間:2024/1/23 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Elasticsearch教程elasticsearch Client创建 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Elasticsearch? 創建Client有幾種方式。

首先在 Elasticsearch? 的配置文件 elasticsearch.yml中。定義cluster.name。如下:

cluster.name: sojson-application

創建方式一:

import static org.elasticsearch.node.NodeBuilder.*; //節點方式創建。 Node node = nodeBuilder().clusterName("yourclustername").node(); Client client = node.client(); /* 還有很多節點方式的創建方式,查看下面的官網地址。 https://www.elastic.co/guide/en/elasticsearch/client/java-api/2.0/node-client.html */

創建方式二:

/** * 指定 ip地址創建 */ // on startup Client client = TransportClient.builder().build() .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("host1"), 9300)) .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("host2"), 9300));// on shutdown client.close();

創建方式三:

//按集群名稱創建 Settings settings = Settings.settingsBuilder() .put("cluster.name", "sojson-application").build(); Client client = TransportClient.builder().settings(settings).build(); //Add transport addresses and do something with the client...

創建方式四:

//同一內網Ip段,嗅的方式自己查找,組成集群。 Settings settings = Settings.settingsBuilder() .put("client.transport.sniff", true).build(); TransportClient client = TransportClient.builder().settings(settings).build(); /* 客戶端允許嗅其余的集群,它將數據節點添加到列表的機器使用。在這種情況下要注意,將使用的IP地址的其他節點開始(“publish”地址)。啟用它,設置client.transport.sniff為 true: */

其實還有很多方式。具體使用哪種,看自己需求。

我的工具類:

package com.sojson.core.elasticsearch.utils;import java.net.InetAddress;import org.elasticsearch.client.Client; import org.elasticsearch.client.transport.TransportClient; import org.elasticsearch.common.settings.Settings; import org.elasticsearch.common.transport.InetSocketTransportAddress;import com.sojson.common.utils.LoggerUtils; import com.sojson.core.config.IConfig;public class ESTools {public final static Client client = build();public final static Class clazz = ESTools.class;/** * 創建一次 * @return */ private static Client build(){ if(null != client){ return client; } Client client = null; String ip = IConfig.get("es_ip"); LoggerUtils.fmtDebug(clazz, "獲取ESIP地址:%s", ip); try { LoggerUtils.fmtDebug(clazz, "創建Elasticsearch Client 開始"); Settings settings = Settings .settingsBuilder() .put("cluster.name","sojson-application") .put("client.transport.sniff", true) .build(); client = TransportClient.builder().settings(settings).build() .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName(ip), 9300)); LoggerUtils.fmtDebug(clazz, "創建Elasticsearch Client 結束"); } catch (Exception e) { LoggerUtils.fmtError(clazz, e, "創建Client異常"); } return client; }/** * 關閉 */ public static void close(){ if(null != client){ try { client.close(); } catch (Exception e) {} } }}

總結

以上是生活随笔為你收集整理的Elasticsearch教程elasticsearch Client创建的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。