我将主持一个webrtc应用程序.所有服务器需要做的只是传递诸如房间号,候选冰,断开连接等消息,只是传递信令的所有消息.我正在使用socket.io和node.js.
服务器几乎只传递文本.没有注册,没有数据库,它都在内存中.它会跟踪在线用户列表(在线用户数量)以及所拍摄的房间列表.所以有几个数字列表,它在用户之间传递文本,以便他们可以通过webrtc连接.
现在,显然当(如果)我收到大量流量时,列表可能会有点大,就像每个列表中的10k-20k 5位数字(只有几个大的列表).
所有这些传递,如断开和连接.我需要一台可以快速完成这项工作的服务器,最好是免费的服务器.我的意思是,它只是文字,所以它不应该是那么大的交易,对吧?但我的应用程序的结构是将一个人连接到下一个连接的人.所以,如果一大群人在同一秒内连接,那么我需要一个可以处理到毫秒级的快速托管服务器......这甚至会成为一个问题吗?
如果我只是在数字列表中使用内存(没有数据库),并且传递文本内容,那么我究竟应该在服务器中寻找什么?
我正在使用任务管理器跟踪内存,我的应用程序是使用socket.io的webrtc应用程序.
因此,当我跟踪内存并打开localhost时,连接两个浏览器窗口,显然会增加一些内存.我认为它从19.3 MB开始,然后为每个连接增加0.5MB.
然而!当我关闭连接时,不再打开localhost窗口,它的内存使用量永远不会减少!因此,如果它达到20MB或其他东西,那么它将保持在那里,永远不会减少.
为什么是这样?有某种内存泄漏吗?
顺便说一句,这是跟踪内存使用情况的正确方法吗?或者我不应该使用任务管理器?