Node.js Nodejs Cassandra客户端[节点Cassandra客户端]
我尝试使用nodejs连接到我的cassandra集群[Version1.0.6] 这是我的示例脚本Node.js Nodejs Cassandra客户端[节点Cassandra客户端],node.js,cassandra,Node.js,Cassandra,我尝试使用nodejs连接到我的cassandra集群[Version1.0.6] 这是我的示例脚本 var Connection = require('cassandra-client').Connection; var con = new Connection({host:'x.x.x.x', port:9160, keyspace:'Stats', timeout:10000}); console.log(con); con.execute('UPDATE TestCF ?=? WHERE
var Connection = require('cassandra-client').Connection;
var con = new Connection({host:'x.x.x.x', port:9160, keyspace:'Stats', timeout:10000});
console.log(con);
con.execute('UPDATE TestCF ?=? WHERE key=?', ['cola', '1', '20120132'], function(err) {
if (err) {
console.log("Failed");
} else {
console.log("success");
}
});
关于脚本的执行
The "sys" module is now called "util". It should have a similar interface.
node-cassandra-client.driver: connecting x.x.x.x:9160 {}
{ validators: {},
client: null,
connectionInfo:
{ host: 'x.x.x.x',
port: 9160,
keyspace: 'Stats',
timeout: 10000 },
timeout: 10000 }
node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^
TypeError: Cannot call method 'execute_cql_query' of null
at [object Object].execute (/home/tamil/workspace/TestProjects/node-cass/node_modules/cassandra-client/lib/driver.js:367:17)
at Object.<anonymous> (/home/tamil/workspace/TestProjects/node-cass/index.js:5:5)
at Module._compile (module.js:432:26)
at Object..js (module.js:450:10)
at Module.load (module.js:351:31)
at Function._load (module.js:310:12)
at Array.0 (module.js:470:10)
at EventEmitter._tickCallback (node.js:192:40)
错误原因是什么?需要一些帮助来解决这个问题。node.js thrift驱动程序似乎存在某种问题。我更幸运。您连接中的客户端为空。首先需要连接()。下面是一个示例(忽略所有错误):
我建议使用来处理连接、查询、关闭等的顺序。FYI在使用池连接工作时执行相同的查询。您如何处理异步连接、查询和关闭的顺序?请记住任何保证有序工作流的内容:async.series和async.fallet。谢谢,这就是我最后所做的,它非常有效。
Address DC Rack Status State Load Owns Token
x.x.x.x datacenter1 rack1 Up Normal 1.03 MB 100.00% 0
var con = new Connection({host:'x.x.x.x', port:9160, keyspace:'Stats', timeout:10000});
con.connect(function(err) {
assert.ifError(err);
con.execute('SELECT COUNT(*) FROM TestCF', [], function(err, rows) {
con.close(function(err) {
// you're done now.
});
});
});