我是靠谱客的博主 迅速朋友,最近开发中收集的这篇文章主要介绍ElasticSearch 2.4.0系列之二 java 创建client客户端,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Elasticsearch为Java用户提供了两种内置客户端:

节点客户端(node client)
    节点客户端以无数据节点(none data node)身份加入集群, 换言之, 它自己不存储任何数据, 但是它知道数据在集群中的具
体位置, 并且能够直接转发请求到对应的节点上。

传输客户端(Transport client)
    这个更轻量的传输客户端能够发送请求到远程集群。 它自己不加入集群, 只是简单转发请求给集群中的节点。
两个Java客户端都通过9300端口与集群交互, 使用Elasticsearch传输协议(Elasticsearch Transport Protocol)。 集群中的节点
之间也通过9300端口进行通信。 如果此端口未开放, 你的节点将不能组成集群。

区别:
1.节点客户端会创建一个节点加入集群,而传输客户端不会
2.节点客户端使用一个client客户端,而传输客户端会获取所有节点的client客户端,然后遍历可用的client客户端
3.传输客户端会产生双跳问题,例如,如果此时使用的是node1创建的client,而要查询的数据在node2上,那么client会先将请求发送到node1,然后再转发到node2上请求数据。节点客户端不会产生该问题,它会直接将请求发送到node2


节点客户端(node client)的创建方式:

 // 创建配置对象 myClusterName处为es集群名称
        Settings settings = Settings.settingsBuilder()
                .put("cluster.name", "myClusterName").build();

        //创建node创建器
        NodeBuilder nodeBuilder = NodeBuilder.nodeBuilder();
    
        //创建node节点 client为true表示该节点不存储数据
        Node node = nodeBuilder.clusterName("yourclustername").client(true).settings(settings)
                .node();
                
        //创建node客户端        
        Client client2 = node.client();


传输客户端(Transport client)的创建方式:

        // 创建配置对象 myClusterName处为es集群名称
        Settings settings = Settings.settingsBuilder()
                .put("cluster.name", "myClusterName").build();
        // 创建客户端 host1,host2处为es集群节点的ip地址
        TransportClient client = TransportClient
                .builder()
                .settings(settings)
                .build()
                .addTransportAddress(
                        new InetSocketTransportAddress(InetAddress
                                .getByName("host1"), 9300))
                .addTransportAddress(
                        new InetSocketTransportAddress(InetAddress
                                .getByName("host2"), 9300));

参考书籍:

ElasticSearch权威指南


最后

以上就是迅速朋友为你收集整理的ElasticSearch 2.4.0系列之二 java 创建client客户端的全部内容,希望文章能够帮你解决ElasticSearch 2.4.0系列之二 java 创建client客户端所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(50)

评论列表共有 0 条评论

立即
投稿
返回
顶部