Mongoose查询连接的朋友
我怎么能有效地显示状态“连接的用户”在我的朋友列表使用mongoose?
我也使用套接字io(我打算切换到套接字p2p)
我的朋友列表是一个对象的数组与uid,名称,图片,套接字作为道具和这个数组存储在我的个人资料文件。
我在这里看到了一些select,但不知道什么是最好的
-
使用操作符$ in查询连接到应用程序的所有用户,并将结果与我的朋友数组进行匹配
-
将每个login的用户存储在一个单独的集合中,并进行比较
-
search与每个朋友的套接字ID的套接字io适配器(在这里处理的问题,例如:浏览器刷新)
谢谢你的帮助
考虑为此使用Primus和Primus房间 。 基本上Primus是您的套接字层的抽象,并为您提供使用不同的Web套接字实现的可能性。
Primus客房增加了让客户(你的情况下的朋友)join某个“房间”,然后向所有连接的客户端广播消息的function。
由于这些开源工具可以给你所需的function,重新发明轮子是没有意义的。
关于Mongoose:Primus Rooms默认使用“内存适配器”。 这意味着客户join房间时不会持续。 不过,请随时为Primus客房编写一个Mongoose适配器,并将其提供给社区。