在过去的几周中,我已经使用HTML5 Websockets和node.js与socket.io构建了一个小型通知系统。 还有一些我还没有解决的问题。HTML5 Websocket + Node.js实时通知系统
我读过使用node.js的实时通知应该是最好的性能解决方案vs长轮询等,因为非阻塞I/O操作。
现在假设我们必须通知此用户的朋友。就像“我买了一个新的iPhone”。如何让node.js实时通知特定用户1:n?直到知道我只有发送和接收消息1-1通信。 这意味着我必须首先检查facebook api friendlist,并找出哪个facebook_id以某种方式与哪个socket_id连接。然后检查用户的隐私设置,如果他想接收通知,然后发送并将其保存到数据库中。
所以对我来说这某种程度上似乎不是最有效的解决方案......
目前我会用蒙戈-DB本地驱动程序的Node.js并请有serversided的JavaScript实现数据库操作。 我仍然需要实现facebooks javascript sdk才能获取好友列表,但我会遇到用户隐私设置问题。这不会破坏非阻塞I/O的所有优点吗?
你是怎么解决这个问题的。对我来说,这似乎很复杂。
非常感谢。
我会认真考虑使用redis发布/订阅这个。使客户订阅自己的频道或频道,然后当用户发送消息时,只需将其发布到目标用户/组。 –
这听起来不错。我试试看。 – zer02