[英]Unable to connect to remote Cassandra Cluster using Datastax PHP Driver
我目前正在参与创建一个API,该API使用带有3个节点的Cassandra集群来存储数据。 我使用PHP 5.6.17,Cassandra 2.2.3和Datastax PHP Driver 1.1.0在我的本地机器上开发它,一切都很顺利。
但是,我们决定转移到远程Cassandra集群(3.4使用本机协议4),我无法通过PHP访问它,因为我收到以下错误: 发生错误:16777226 - 没有可用于控制连接的主机 。
有趣的是,使用远程集群的ip并使用DevCenter,我设法连接到该集群,创建一个新的密钥空间(SimpleStrategy,RF:2),创建一个新表并添加一行数据。
产生PHP代码的错误如下:
$cluster = \\Cassandra::cluster() ->withContactPoints('xxxx') ->build(); $keyspace = 'foo'; $session = $cluster->connect($keyspace);
最后一行是产生错误的那一行。 但是,如果我尝试使用$cluster = \\Cassandra::cluster()->build();
连接到本地cassandra集群$cluster = \\Cassandra::cluster()->build();
然后它就像一个魅力。 有人知道为什么会这样吗?
试试这些解决方案
添加“ - > withPort(port_number)”默认为9042或检查防火墙是否阻止主机访问
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.