假设我有三个节点(1、2和3),我像这样连接这些节点:
Cluster.builder().addContactPoints("1,2,3".split(",")).build();
假如节点3出现故障,IP无法解析,那么这行代码将会按照文档中所述抛出一个IllegalArgumentException
异常:
@throws IllegalArgumentException 如果{@code addresses}中至少有一个IP地址无法找到
为什么会有人想要这种行为呢?我的意思是,如果其中一个节点出现故障,我希望应用程序仍能正常运行,因为Cassandra仍然可以正常工作。
我查看了Cassandra Java driver: how many contact points is reasonable?,但它并没有回答我的问题,因为它没有提到无法到达的主机。
我该如何处理这个问题?也许在另一个版本的Java驱动程序中已经改变了这一点?我目前正在使用cassandra-driver-core-3.0.3