Aktualizace: Moje odpověď níže není opravdu správná. Ukazuje se, že řešení v problému, který zmiňuji níže, ve skutečnosti stále funguje. Je to spíše náhoda, IMO, ale můžete udělat něco takového a mělo by to fungovat:
var redis = require('redis'),
client = redis.createClient('/tmp/redis.sock');
Jak vidíte z fragmentu kódu níže, bude to předáno net.createConnection
který se připojí k unixovému socketu /tmp/redis.sock
.
Stará odpověď:
O tomto node_redis/issues/204 je uzavřený problém. Zdá se, že základní node.js net.createConnection API se od té doby změnilo. Vypadá to, že by to byla docela malá oprava v node_redis' exports.createClient
funkce:
exports.createClient = function (port_arg, host_arg, options) {
var port = port_arg || default_port,
host = host_arg || default_host,
redis_client, net_client;
net_client = net.createConnection(port, host);
redis_client = new RedisClient(net_client, options);
redis_client.port = port;
redis_client.host = host;
return redis_client;
};
Zdá se, že net.createConnection
se pokusí připojit k unixovému socketu, pokud je volán s jedním argumentem, který vypadá jako cesta. Navrhuji, abyste provedli opravu a poslali žádost o stažení, protože to vypadá jako něco, co stojí za to podpořit.