What part of this code will cause a memory leak?
I make a process listener.It can listen memory's change.So i know the memory usage is growing and it never fall.Sometimes it can growing to 800,000k and make computer crash.
The number of concurrent connections accepted is about 100-300.
Code like this:
var http = require('http').createServer(),
socketio = require('socket.io').listen(http);
var fs = require("fs");
var util = require('util');
http.listen(3000);
var connectCount = 0;
socketio.on("connection",function(socket){
connectCount++;
socket.on('chatMessage',function(msg){
delete res;
delete res2;
//json string for return to client
var res = {
channel:msg.channel,
clubname:msg.name,
dn:msg.dn, .
mesContent:msg.messageContent,
dn1:"",
dn2:""
}
var res2 = {
channel:msg.channel,
clubname:msg.name,
dn:"",
mesContent:msg.messageContent,
dn1:"",
dn2:"" ,
curChannel:msg.curChannel
}
if(msg.channel == 0){ //Public Message
socket.emit('pubMessage',res2,function(){
console.log("ok");
});
socket.broadcast.emit('pubMessage',res,function(){
console.log("ok");
});
}else if(msg.channel == 7){ //Private Message
socket.emit('priMessage',res,function(){
console.log("ok");
});
socket.broadcast.emit('priMessage',res,function(){
console.log("ok");
});
}
});
//Cache data geter
socket.on('getChatCache',function(type){
var ind = 0;
socket.emit("getChatCache",type==7 ? chatCache_20.where("channel",type) : chatCache_20);
});
//Chat server init method
socket.on('init',function(){
socket.emit('init',{chatChache:chatCache_20});
});
})