ここ数週間で、 HTML5 Websockets と node.js と socket.ioを使用して小さな通知システムを構築しました。 まだ解決していないことがいくつかあります。
node.js を使用したリアルタイム通知は、ブロックされていない i/o 操作のため、ロング ポーリングなどと比べて最適なパフォーマンス ソリューションであると読みました。
ここで、このユーザーを友人に通知する必要があるとします。「新しいiPhoneを買いました」みたいな。特定のユーザー1:nにリアルタイムで通知するようにnode.jsに教えるにはどうすればよいですか? 私はメッセージ1-1の通信しか送受信していないことを知っています。これは、最初に facebook api フレンドリストをチェックして、どの facebook_id がどの socket_id に接続されているかを調べる必要があることを意味します。次に、ユーザーが通知を受け取り、それを送信してデータベースに保存する場合は、ユーザーのプライバシー設定を確認します。
だから私には、これはどういうわけか最も効果的な解決策ではないようです...
現時点では、node.js に mongo-db ネイティブ ドライバーを使用し、サーバー側の JavaScript によって db 操作を実行します。フレンドリストを取得するには、まだ facebooks javascript sdk を実装する必要がありますが、ユーザーのプライバシー設定に問題があります。これはノンブロッキング I/O のすべての利点を台無しにしませんか?
これを実際にどのように解決しますか。私には、それは非常に複雑に思えます。
どうもありがとうございました。