redis使用多个数据库时,哪中方式最合适呢?
比如,有三种数据“类型”需要存储, session,user, book
方式一:
var redisObj = {};
var sessionRedis = redis.createClient(host, port);
sessionRedis.select(1);
var userRedis = redis.createClient(host, port);
userRedis.select(2);
var bookRedis = redis.createClient(host, port);
bookRedis.select(3);
redisObj = {
sessionRedis: sessionRedis,
userRedis: userRedis,
bookRedis: bookRedis
};
module.exports = redisObj;
另一种方式
var redisClient = redis.createRedis(host, port);
exports.getRedis = function(type, num) {
if(type == "sessionRedis"){
return redisClient.select(1);
}else if(type == "userRedis"){
return userRedis.select(2);
}else if(type == "bookRedis") {
return bookRedis.select(3)
}
}
1) 一种是创建多个客户端,一种是通过切换数据库,哪种方式会更好一些? 2) 像消息队列模块bull使用了redis实现的,它是否用到了数据库呢,是怎么避免用到你在用的那个库呢?