我有一个使用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();
});
我是否应该继续打开和关闭redis,或者我可以打开它一次并将其打开?以上哪个片段是启动服务器的正确方法?
答案 0 :(得分:2)
第一个是优先语法,因为每次客户端连接到Socket.IO时都不想建立新的redis连接。如果你有1000个用户连接,你想要有1000个连接到Redis或只有一个(好吧可能更多,因为你产生更多的服务器)?
正如@racar建议的那样,你应该看看这个问题: