您应该让 Redis 保持打开状态,还是在每次在节点中使用后打开并退出它?
Posted
技术标签:
【中文标题】您应该让 Redis 保持打开状态,还是在每次在节点中使用后打开并退出它?【英文标题】:Are you supposed to leave Redis open, or open and quit it after each use in node? 【发布时间】:2012-01-19 19:03:11 【问题描述】:我有一个使用名为“server.js”的 redis 的 socket.io 服务器来启动节点服务器。目前是这样的:
var client = redis.createClient()
var io = require('socket.io').listen(80);
io.sockets.on('connection', function (socket)
client.set(); // do something with redis
);
然后我启动我的服务器,它就一直活着。这是错的吗?应该是这样吗?
var io = require('socket.io').listen(80);
io.sockets.on('connection', function (socket)
var client = redis.createClient()
client.set(); // do something with redis
client.quit();
);
我应该继续打开和关闭redis,还是我可以只打开一次并保持打开状态?以上哪个 sn-ps 是启动服务器的正确方法?
【问题讨论】:
见:***.com/questions/5739357/… 【参考方案1】:第一个是首选语法,因为您不希望每次客户端连接到 Socket.IO 时都建立新的 redis 连接。如果您连接了 1000 个用户,您希望有 1000 个到 Redis 的连接还是只有一个(好吧,也许更多,因为您会产生更多的服务器)?
正如@racar 建议的那样,您也应该看看这个问题:
How to reuse redis connection in socket.io?
【讨论】:
以上是关于您应该让 Redis 保持打开状态,还是在每次在节点中使用后打开并退出它?的主要内容,如果未能解决你的问题,请参考以下文章