如何让Datastax Java Cassandra驱动程序在尝试连接到集群时超时?Tell Datastax Java Cassandra驱动程序超时集群连接
我对主机可达的情况特别感兴趣,但Cassandra端口被阻塞或者Cassandra守护进程未运行。我正在编写一个命令行客户端,如果它在合理的时间内无法连接,应该退出并报告合适的错误消息。目前看来,如果接触点可达,驾驶员将永远等待接触点回应。
也就是说,如果驱动程序无法在给定的最大时间内与任何接触点的Cassandra守护进程通信,我希望Cluster.build()
抛出NoHostAvailableException
。
- 创建我自己的
RetryPolicy
将无法正常工作:即对重试查询,我想超时申请之前,我们已经准备好运行查询。 - 创建我自己的
ReconnectinoPolicy
最初看起来前途无量,但对于接口的合同没有给出装置,用于指示“考虑这个节点是死永远地”
这是可能的,我实际上看到第二个案例。我必须错过那个套接字选项。正如你所暗示的那样,在大多数情况下,这应该足够好。 – Raedwald
@Raedwald,你是否为这个问题提出了错误,或者是否有更简单的解决方案? –