2010-11-16 3 views
1

bonjour tous
J'ai regardé la source redis-node-client (la partie pertinente est montrée ci-dessous) et je vois qu'elle se connecte à redis via le 'net' package, qui est basé sur TCP.connexion directe (non-tcp) à redis de nodejs

ligne 370

exports.createClient = function (port, host, options) { 
var port = port || exports.DEFAULT_PORT; 
var host = host || exports.DEFAULT_HOST; 

var client = new Client(net.createConnection(port, host), options); 

client.port = port; 
client.host = host; 

return client; 
}; 

Je me demandais s'il y a un plus direct avec le client pour Redis, de préférence par domaine Assemblages ou quelque chose de ce genre. Im en utilisant Redis localy, comme cache, sans passer sur le fil de sorte que son inutile d'encoder/décoder les messages avec les en-têtes TCP ...

Merci

Répondre

3

Unix support Socket de domaine semble avoir atterri dans Redis à partir de Nov 4ème.

http://code.google.com/p/redis/issues/detail?id=231

Pour vous connecter à un socket de domaine Unix, vous devez fournir le chemin d'accès net.createConnection. Peut-être quelque chose comme ça dans redis-node-client:

exports.createSocketClient = function (path, options) { 
    var client = new Client(net.createConnection(path), options); 
    client.path = path; 
    return client; 
}; 
+0

super, merci l'homme – deepblue