Redis
 sql >> Database >  >> NoSQL >> Redis

Come separare il database redis per le stesse due app in node.js

Puoi usare .select(db, callback) funzione in node_redis.

var redis = require('redis'),
db = redis.createClient();

db.select(1, function(err,res){
  // you'll want to check that the select was successful here
  // if(err) return err;
  db.set('key', 'string'); // this will be posted to database 1 rather than db 0
});

Se stai utilizzando expressjs, puoi impostare una variabile di ambiente di sviluppo e produzione per impostare automaticamente il database che stai utilizzando.

var express = require('express'), 
app = express.createServer();

app.configure('development', function(){
  // development options go here
  app.set('redisdb', 5);
});

app.configure('production', function(){
  // production options here
  app.set('redisdb', 0);
});

Quindi puoi effettuare una chiamata a db.select() e avere le opzioni impostate per production o development .

db.select(app.get('redisdb'), function(err,res){ // app.get will return the value you set above
  // do something here
});

Maggiori informazioni su sviluppo/produzione in expressjs:http://expressjs.com/guide.html#configuration

Il node_redis .select(db, callback) la funzione di callback restituirà OK nel secondo argomento se il database è selezionato. Un esempio di questo può essere visto nella sezione Usage del readme node_redis.