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

Ho due app in esecuzione su una diversa per la demo e una per lo sviluppo. E m usando il database redis per memorizzare il valore della chiave, come posso separare il database redis per queste due diverse app. m usando node.js per il client redis. e m utilizzando questo https://github.com/mranney/node_redis/ client redis.

come separare il database redis per la stessa app nel nodo.

È ansible utilizzare la funzione .select(db, callback) 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 si utilizza expressjs, è ansible impostare una variabile di ambiente di sviluppo e produzione per impostare automaticamente il database che si sta 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 la production o lo development .

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

Ulteriori informazioni su dev / production in expressjs: http://expressjs.com/guide.html#configuration

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