veezzz
V2EX  ›  Node.js

socket.io 的内存使用问题

  •  
  •   veezzz · Mar 24, 2015 · 4345 views
    This topic created in 4067 days ago, the information mentioned may be changed or developed.

    我在测试socket.io(1.3.5)的时候发现,当用户断开连接后,socket.io的进程并没有释放内存,当用户不断连接再断开后,该进程的内存使用不断上升。这是需要自己手动释放连接的内存么,求指点。

    4 replies    2015-03-25 14:24:22 +08:00
    czheo
        2
    czheo  
       Mar 25, 2015 via iPhone
    show me the code
    veezzz
        3
    veezzz  
    OP
       Mar 25, 2015
    @czheo 测试了下,好像是因为使用redis的模块引起的,我是这么用的

    in a.js
    var redis = require('redis'),
    redisClient = redis.createClient();

    var o = {
    find: function(id, callback){
    redisClient.get(id, function(err, reply){
    if(reply) callback(reply);
    });
    };
    };
    exports = module.exports = o;

    in b.js
    var o = require('a');
    o.find(function(r){});

    不知道这样的用法会有什么问题,求指点
    veezzz
        4
    veezzz  
    OP
       Mar 25, 2015
    @czheo 再次检查了 好像不是这个问题, 我用socket.io的官方例子测试也有这问题,断开连接没有释放内存,这个node 的 gc有关系么
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1154 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 52ms · UTC 17:42 · PVG 01:42 · LAX 10:42 · JFK 13:42
    ♥ Do have faith in what you're doing.