Я обнаружил, что сокеты не полностью уничтожаются на стороне сервера сокетов при их отключении вручную.Я нашел эту тему на github полезной.В то время как я ищу некоторые переменные ссылки, которые мешают GC чистить сокеты, я задаю вопрос здесь.
Если кто-то здесь столкнулся с той же проблемой, это очень помогло бы.
код, который не работает:
socket.on('disconnect', function(){
socket.removeAllListeners();
});
///...................
socket.disconnect();
Обходной путь, который, однако, использует ограниченные поля библиотеки:
delete io.sockets[url];
io.j = [];