当群集中的少数cassandra服务器关闭时,问题与phpcassa有关

时间:2012-09-18 13:04:35

标签: cassandra phpcassa

当集群中的某些cassandra服务器出现故障时,phpcassa需要花费大量时间来响应。

逻辑上,phpcassa应该连接到正在运行的节点并获取数据,而不是尝试连接到down节点。

有人知道phpcassa是如何工作的吗? 在节点情况下它的行为是什么?

1 个答案:

答案 0 :(得分:2)

检查make_conn函数here和最后几行ConnectionPool constructor

所以,首先PHPCassa随机洗牌你的服务器列表, 然后它尝试在一个周期内连接到列表中的每个服务器两次,只有在第一个周期[make_conn]之后队列长度为零时 否则它会在第一次成功连接时返回

还要记住,不会从构造函数中调用make_conn函数。它将在需要时调用。源代码非常简单,你可以通过它来获得更多的意义

检查此code以查看如何处理连接失败,并this了解连接失败的原因