Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在试验 node.js 构建一个聊天服务器应用程序,所以我试图在数组中维护客户端连接,为每个在数组中插入客户端对象的新连接增加索引。我不喜欢这个解决方案,因为我认为它太轻了,我在每次断开连接时都在数组中放置了孔,并且发现需要很长时间在数组中进行迭代以找到某个连接。处理多个连接的“节点”方式是什么?
作为记录,我在这里的理解是,您正在尝试跟踪客户以了解向谁广播?我认为这是基于您之前提出的我看到的问题。
我相信这类似于 socket.io 在内部处理房间的方式。自从我真正研究它以来已经有一段时间了,但我相信这就是它的完成方式。话虽如此,我过去所做的是每次聊天都使用房间。类似于连接成员的用户名/用户 ID 的东西。这样,当您在连接上获取数据时,您可以轻松地将其广播回同一个房间,这会将其发送到房间中的所有连接,但接收它的那个连接除外。非常适合聊天应用程序。Socket.io 将处理跟踪哪些连接在哪个房间中。