在過去的幾週中,我已經使用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