Как уничтожить соединение WebSocketServer при отключении клиента?

У меня есть два приложения, которые общаются друг с другом на локальной машине. Он разработан таким образом, что всякий раз, когда клиент отправляет данные, он создает соединение, и после этого соединение закрывается клиентом.

Проблема в том, что закрытое соединение на стороне сервера не разрушается, что приводит к утечке памяти.

Вот код сервера:

var server = http.createServer(function(request, response) {
  // we don't have to implement anything.
});
server.listen(0, 'localhost', function() {});

// create the server
var wsServer = new WebSocketServer({
  httpServer: server
});

// WebSocket server
wsServer.on('request', function(request) {
  connection = request.accept(null, request.origin);
  connection.on('message', function(message) {
    // Calling some function to handle message
  });

  connection.on('close', function(connection) {
    // I am getting this event on connection close by client
    // what should I do so that connection destroy and
    // doesn't cause a memory leak?
  });
});

У кого-нибудь есть идеи, что я могу сделать в этом случае?

ПРИМЕЧАНИЕ: я не могу изменить модель взаимодействия сервер-клиент.

0 ответов

Другие вопросы по тегам