首页 文章

如何连接到具有多个节点的cassandra java客户端,而不使用jdbc或datastax驱动程序在java代码中提及节点详细信息

提问于
浏览
0

我是Cassandra的新手我希望通过Java客户端连接到Cassandra作为Cassandra api . 我可以通过使用datastax作为jdbc驱动程序连接到Cassandra,通过在我的java代码中给出节点详细信息 . 现在我想连接到Cassandra集群,我在集群中有4个节点,我想连接到Cassandra集群节点而没有在代码中给出节点详细信息,并且需要在集群中1个节点关闭时获得连接它应该连接到集群中的下一个节点,所以当我使用数据存储驱动程序时,我的代码中的节点详细信息 . 任何人都可以帮我做这个..它会帮助我很多提前谢谢

2 回答

  • 0

    看看这个Load Balancing页面 .

    Cassandra使用八卦来保持所有其他节点的状态 . 您可以连接到一个,它将知道所有其他人并按指示负载 balancer . 基本上,如果之前测试的节点是这个新集群的一部分,那么旧代码应该可以正常工作 .

  • 0

    我能够连接到cassandra集群,当我的一个节点从集群关闭时能够连接到集群中的其他节点并且也可以实现负载 balancer ,下面是我使用并连接的连接 .

    cluster = Cluster
                .builder()
                .addContactPoints("192.1.1.1","192.1.1.2")
                .withRetryPolicy(DefaultRetryPolicy.INSTANCE)
                .withLoadBalancingPolicy(
                        new TokenAwarePolicy(new DCAwareRoundRobinPolicy.Builder().build()))
                .build();
    

相关问题