当节点服务器重新启动时,如何存储/保留套接字连接

我正在使用webrtc.io创build我的audio,video聊天应用程序的套接字连接。 我想保留所有套接字连接,以便在重新启动node.js服务器时向所有最终用户发送更新。

我正在使用Mongodb作为这个应用程序的数据库。 有没有办法存储在数据库中,并重新启动服务器时检索它?

我要给你一个共同的生活情况来解释这一点。

假设您有一部手机无法拨打电话,您只能接听电话。

有人打电话给你,你可以和他们交谈,消息以固定的连接向前和向后传递。 这比SMS更好,因为你只能回复发送给你的短信,但是现在你有了这个不间断的连接,可以自由地进行通话。

现在在这些陈述中,我只是描述了什么Websockets是和Http之间的区别。 接下来,我将把这个应用到你所问的问题上。

现在假设在这个电话里,你只能继续跟别人打来的电话通话,你的电池就用完了。 你find一个电源插入,让你的手机再次工作。 那么您是否期望您的手机突然重新build立电池用完时掉下的通话?

你不会发起你正在谈论的连接。 所以你不能“打回电话”或“重新build立通话”。 这是一个严格的“客户打电话给你”的情况。

你可以做的最好的是保持会话状态到后续的重新连接“拿起你离开的地方”。 但在挂断电话时,客户必须给您回电。

为了获得更好的可用性,您需要代理连接并共享多个应用程序服务器节点,所有这些节点都可以访问相同的会话状态。