我已经设置了一个多节点 Cassandra。我正在使用 Spring Data Cassandra 来访问它。我可以将逗号分隔的列表传递给 Cassandra 集群吗?
<cassandra:cluster contact-points="value1,value2,value3" />
我的第二个问题是:需要吗?我将来可能会添加更多节点。
我已经设置了一个多节点 Cassandra。我正在使用 Spring Data Cassandra 来访问它。我可以将逗号分隔的列表传递给 Cassandra 集群吗?
<cassandra:cluster contact-points="value1,value2,value3" />
我的第二个问题是:需要吗?我将来可能会添加更多节点。
Q#1 的答案:是的。您可以传递一个逗号分隔的联系点列表。Q#2 的答案:不是严格要求,但建议使用。
附加信息
对于任何驱动程序来说,将单个节点作为接触点就足够了。然后,驱动程序将在定义的拓扑的帮助下自动识别整个集群。
但是有一个问题
如果那个节点宕机了怎么办?所以我通常会为我的 DataStax 驱动程序提供几个节点。(单个集群中每个机架至少有一个节点)。有些人提供种子节点作为接触点。也建议使用此选项。
种子节点与接触点
记住“种子节点”和“联系点”的目的很重要。当 Cassandra 集群启动时,种子节点支持节点和拓扑发现。驱动程序在与 Cassandra 集群交互时使用“联系点”。
另请参阅驱动程序的文档并注意驱动程序的默认拓扑设置。