Redis
 sql >> Teknologi Basis Data >  >> NoSQL >> Redis

Koneksi Redis melalui soket di Node.js

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.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Ruang nama di Redis?

  2. Kesalahan Perintah Pengelompokan Perusahaan Redis 'CLUSTER'

  3. Redis — cara terbaik untuk menyimpan peta besar (kamus)

  4. nginx uwsgi websockets 502 Bad Gateway upstream koneksi tertutup sebelum waktunya saat membaca header respons dari upstream

  5. mengeksekusi perintah redis eval untuk menjalankan skrip Lua di nodeJS