Puede usar la función .select(db, callback)
en 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
});
Si está utilizando expressjs, puede establecer una variable de entorno de desarrollo y de producción para establecer automáticamente qué base de datos que está utilizando.
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);
});
entonces usted puede hacer una llamada a db.select()
y tienen las opciones establecidas para production
o development
.
db.select(app.get('redisdb'), function(err,res){ // app.get will return the value you set above
// do something here
});
Más información sobre dev/producción en expressjs: http://expressjs.com/guide.html#configuration
La función de devolución de llamada .select(db, callback)
node_redis
volverá OK en el segundo argumento, si se selecciona la base de datos. Se puede ver un ejemplo de esto en la sección Usage del node_redis readme.
+1 para la conmutación de base de datos de entorno express! – Raynos
cómo crear db en redis ?? – Udhaya
Cuando escribe "La función node_redis .select() devolverá OK si la base de datos está seleccionada", leí que puedo usarla de forma síncrona, confiando en su valor de retorno inmediato como indicador de que el comando de selección de base de datos se ha completado exitosamente. Sin embargo, la función parece funcionar de forma asíncrona, volviendo indefinidamente de forma inmediata. Sin embargo, la selección sincrónica sería súper conveniente. – sheldonh