ElasticSearch(一) Transport Client

Transport  Client 通过远程连接到Es 集群,他不加入集群,只是通过集群nodes 的 transportAddress 和集群通信。

一  如何通过集群域名获得集群nodes的transportAddress

http://xxx.com/_cat/nodes?h=ip,port

http://xxx.com/_nodes/transport

 

二 TransportClient 初始化方式

// on startup

TransportClient client = new PreBuiltTransportClient(Settings.EMPTY)
        .addTransportAddress(new TransportAddress(InetAddress.getByName("host1"), 9300)) //9300 为nodes 默认的端口,请使用实际 端口号
        .addTransportAddress(new TransportAddress(InetAddress.getByName("host2"), 9300));

// on shutdown

client.close();

三 TransportClient 动态加入node

Settings settings = Settings.builder()
        .put("client.transport.sniff", true)   //嗅探 默认每5s去更新下集群新的节点,加入新节点,去掉坏节点
.put("cluster.name", "myClusterName") //集群名称
.build();

TransportClient client = new PreBuiltTransportClient(settings);

四 Settings 其他参数

可通过设置 client.transport.nodes_sampler_interval 来改变轮询集群节点连接的频率。
ParameterDescription

client.transport.ignore_cluster_name

Set to true to ignore cluster name validation of connected nodes. (since 0.19.4)

client.transport.ping_timeout

The time to wait for a ping response from a node. Defaults to 5s.

client.transport.nodes_sampler_interval

How often to sample / ping the nodes listed and connected. Defaults to 5s.


官方文档:https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/transport-client.html

转载于:https://www.cnblogs.com/xiaocandou/p/8016340.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值