Created
May 11, 2010 18:42
-
-
Save mcroydon/397670 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// A simple Cassandra node.js "Hello World" | |
// Assumes Cassandra 0.6.1 on localhost with the default schema. | |
// | |
// You'll also want to load some data: | |
// | |
// $ cassandra-cli --host localhost --port 9160 | |
// Connected to: "Test Cluster" on localhost/9160 | |
// Welcome to cassandra CLI. | |
// | |
// Type 'help' or '?' for help. Type 'quit' or 'exit' to quit. | |
// cassandra> set Keyspace1.Standard1['foo']['bar'] = 'baz' | |
var sys = require('sys'), | |
http = require('http'); | |
// Set up logging (http://github.com/csausdev/log4js-node) | |
var log4js = require('log4js-node'); | |
log4js.addAppender(log4js.consoleAppender()); | |
var logger = log4js.getLogger('pants'); | |
logger.setLevel('DEBUG'); | |
// Set up Cassandra (http://github.com/danieldkim/cassandra-node-bridge) | |
var cassandra = require('cassandra-node-client').create(10000, '127.0.0.1', logger) | |
var ConsistencyLevel = require('cassandra-node-client').ConsistencyLevel | |
http.createServer(function (request, response) { | |
response.writeHead(200, {'Content-Type': 'text/plain'}); | |
var cassreq = cassandra.create_request("get_slice", { | |
keyspace: "Keyspace1", key: "foo", | |
column_parent: {column_family:"Standard1"}, | |
predicate: {column_names:["bar"]}, | |
consistency_level: ConsistencyLevel.QUORUM | |
}) | |
cassreq.addListener("success", function(result) { | |
result.forEach(function(col) { | |
sys.puts("Got column " + col.name + ":" + col.value); | |
response.write("Got column " + col.name + ":" + col.value + "\n"); | |
}); | |
response.end(); | |
}) | |
cassreq.addListener("error", function(mess) { | |
sys.puts("Error from cassandra-node-client: " + mess) | |
}) | |
cassreq.send(); | |
}).listen(8000); | |
sys.puts('Server running at http://127.0.0.1:8000/'); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment