【发布时间】:2016-09-02 01:15:41
【问题描述】:
我正在使用 express-cassandra 版本 0.5.4 连接到我托管的 aws cassandra db。我有权访问,但无论我更改什么,我都会被 ECONNREFUSED
这是正在连接的 express-cassandra 的 sn-p,这在文档中是非常标准的。
models.setDirectory(__dirname + '/../models').bind({
clientOptions: {
contactPoints: [process.env.Cluster1Pub,process.env.Cluster2Pub,process.env.Cluster3Pub],
protocolOptions: {port: 9042},
keyspace: process.env.keyspace
},
ormOptions: {
defaultReplicationStrategy : {
class: 'NetworkTopologyStrategy',
replication_factor: 3
},
dropTableOnSchemaChange: false,
dontCreateKeyspace: true
}
},function(err) {
if(err) console.log(err.message);
else console.log(models.timeuuid());
});
【问题讨论】:
-
在尝试连接到未打开的端口时,这是一个非常常见的网络错误。您是否已验证您可以从客户端计算机访问该端口? (例如
nc -z process.env.Cluster1Pub 9042) -
我尝试了 nc -vz ip port(只是 z 没有显示任何内容),但连接被拒绝。在 aws 上,我将其设置为接受所有流量和所有端口的 ip。
-
如果您无法通过 netcat 或 telnet 访问该端口,则说明您存在防火墙问题。检查操作系统防火墙和 AWS 防火墙。
-
DSE 正在运行吗?本地可以打cqlsh吗?
-
这是一个远程数据库,我刚刚尝试部署服务器并在那里尝试,但我遇到了同样的问题。什么是 DSE?
标签: node.js express cassandra datastax datastax-startup