我正在编写一个使用cassandra cql驱动程序来获取/设置cassandra数据的Java应用程序。我的群集中有2个节点,并希望将它们都添加到addContactPoints中,以便在故障转移或负载共享的情况下处理请求。

有人可以告诉我有关addContactPoints(String ... addresss)的更多信息,以及它的工作原理吗?在停机之前仅会使用一个节点,还是将两个节点用于平衡节点?我对该功能的使用尚不清楚,因此无法在Web上找到更多的清晰度。另外,如果一个节点不可达,是否会自动使用另一个ip或还需要设置其他属性?

谢谢!

最佳答案

将仅使用1个节点直到其关闭,否则将同时使用这两个节点
  平衡节点?


重要的是要了解接触点仅用于发现群集的拓扑(类似于如何使用种子节点)。一旦了解了拓扑,驱动程序就可以使用群集中的任何节点(甚至没有提供为接触点的节点)来满足请求。因此,提供的联系点实际上与请求的平衡关系不大。


  同样,如果一个节点不可达,
  自动使用其他ip或其他一些属性也需要
  组?


如果您无法访问联系人列表中的一个节点,它将使用另一个节点。这就是为什么即使您确实只需要提供一个节点,还是提供多个节点也是一个好主意的原因。

08-06 01:17