你应该让Redis打开,还是在每次使用节点后打开并退出?

我有一个使用redis的socket.io服务器,名为“server.js”,它启动了一个节点服务器。 目前它是这样的:

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(); }); 

我应该继续打开和closuresredis,或者我可以打开一次,并打开它? 上面哪个片段是启动服务器的正确方法?

第一个是preffered语法,因为每当客户端连接到Socket.IO时,您都不想创build新的Redis连接。 如果你有1000个用户连接,你想有1000个连接到Redis或者只有一个(也许更多,因为你会产生更多的服务器)?

正如@racarbuild议的,你也应该看看这个问题:

如何在socket.io中重用redis连接?