Pembaruan: Jawaban saya di bawah ini tidak sepenuhnya benar. Ternyata solusi dalam masalah yang saya sebutkan di bawah ini sebenarnya masih berfungsi. Ini lebih kebetulan, IMO, tetapi Anda dapat melakukan sesuatu seperti ini, dan itu akan berhasil:
var redis = require('redis'),
client = redis.createClient('/tmp/redis.sock');
Seperti yang Anda lihat dari cuplikan kode di bawah, ini akan diteruskan ke net.createConnection
yang akan terhubung ke soket unix /tmp/redis.sock
.
Jawaban lama:
Ada masalah tertutup tentang node_redis/issues/204 ini. Tampaknya, pikir, bahwa node.js net.createConnection API yang mendasarinya telah berubah. Sepertinya ini akan menjadi perbaikan yang cukup kecil di exports.createClient
node_redis fungsi:
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;
};
Sepertinya net.createConnection
akan mencoba menyambung ke soket unix jika dipanggil dengan satu argumen, yang terlihat seperti jalur. Saya sarankan Anda menerapkan perbaikan dan mengirim permintaan tarik, karena ini sepertinya sesuatu yang layak untuk didukung.