gpt4 book ai didi

cassandra - 如何将客户端应用程序正确连接到 Scylla 或 Cassandra?

转载 作者:行者123 更新时间:2023-12-02 16:18:59 25 4
gpt4 key购买 nike

假设我在我的本地网络中有一个包含 3 个节点的 ScyllaDB 集群(它可以是 AWS VPC)。我的 Java 应用程序在同一个本地网络中运行。

我很关心如何将应用程序正确连接到数据库。

  • 我是否需要为应用指定所有 3 个数据库节点的 IP 地址?
  • 如果随着时间的推移,一个或多个节点死亡并在其他 IP 上复活怎么办?我是否必须手动重新配置应用程序?
  • 如何在具有数十台数据库服务器(可能位于不同的数据中心)的大型实际生产案例中正确完成?

如果能提供有关如何将 Java 应用程序连接到多节点集群的代码示例,我将不胜感激。

最佳答案

您需要指定联系点(您可以使用 DNS 名称而不是 IP)- 几个节点(通常是 2-3 个),驱动程序将连接到其中一个,并在连接后发现集群的所有节点(参见 driver's documentation )。建立连接后,驱动程序保留单独的 control connection打开,并通过它接收有关节点的上升和下降、加入或离开集群等信息,因此它能够使有关集群拓扑的信息保持最新。

如果您要指定 DNS 名称而不是 IP 地址,那么最好将配置参数 datastax-java-driver.advanced.resolve-contact-points 指定为 true(参见 docs ),因此名称将在每次重新连接时解析为 IP,而不是在应用程序开始时解析。

关于cassandra - 如何将客户端应用程序正确连接到 Scylla 或 Cassandra?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65981699/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com