私は WebSockets から始めています。演習として既にチャット Web アプリケーションを作成しましたが、次のようになりました。すべてのユーザーは、チャット ルームに到着したときに WebSocket 接続を開いており、新しいメッセージが利用可能になると、各ユーザーにプッシュするだけです。その後、javaScript を使用してさまざまなメッセージが表示されます。
ここで、1 対 1 のチャットを作成して、演習をさらに進めようとしています。基本的に、固有のチャット ルームではなく、プライベート チャットの会話が行われます。ユーザーは、同じページからさまざまな人と会話できる必要があります。(Google チャットや Facebook チャットなど)。そうする方法を考えた後、私は2つの解決策にたどり着きました:
- 複数の WebSocket 接続を開きます。(もし可能なら)
- 同じ接続を使用して、開いているすべての会話を処理します。基本的に、クライアントにプッシュされる各メッセージには、それがどの会話に属しているかを示すフィールドがあり、javaScript が適切な会話の下で各メッセージの表示を処理します。
私には、2 番目の解決策が最初の解決策よりも優れているように思えます。だから、私の質問は次のとおりです。
1- Will this solution have any performance problems? (Lost messages...)
2- Is there any other-better way of doing this?