CNode

请教关于socket.io不释放内存的问题

Wwglin122发布于13 年前最后回复12 年前5 回复6376 浏览0 收藏

小弟最近要在做一个实时聊天系统,大概10W人同时在线。 用nodejs+socket.io实现,主要负责消息广播。 测试过程发现一个问题,断开连接和广播消息后,server都不释放内存。 请教一下这个问题如何解决。

查看回复

回复 (5)

X
xiongjia#1·13 年前

10W 人 ... 'W' 是万? 怎么看出 server memory leak 的.难道有直接的工具看 v8 memory 使用?

B
blacktail#3·13 年前

你是否有在disconnect时释放内存? 比如这里一个典型的代码块可能是这样:

socket.on('disconnect', function () { console.log('DISCONNECTED!!!'); delete sockets[chanel][socket.id];

broadcast('user:changed', chanel, getChanelUsers(chanel)); });

R
raven#4·12 年前

哥们儿, 现在这个问题解决了么?

X
xiongjia#5·13 年前
引用 xiongjia10W 人 ... 'W' 是万? 怎么看出 server memory leak 的.难道有直接的工具看 v8 memory 使用?

@wglin122

ps 看不科学的...可能只是有memory pool 才不 实际 free... blacktail 说的 disconnect 不释放引用也是可能

参与回复
登录后即可参与回复。登录