チャットルームを作ることにしました。(サーバー側は PHP または Java)。まず、このアイデアに基づいて AJAX ベースを使用します。
1) 両方のユーザーがサーバーにリクエストを送信して、最新のメッセージを取得することがよくあります。
2)あるユーザーがメッセージを入力して入力すると、テキストがサーバーに送信され、サーバーはそれをデータベースに保存し、他のユーザーが受け取るのを待ちます。
この方法の欠点は、効率的でないことです。チャットプログラムではあまり問題にはなりませんが、画面に描画したり、他のユーザーと共有したりするなど、別の機能を作成することにしました。
そこで、他の方法を使用することにしました。ここに新しい方法があります:
1) ユーザーがチャット ルームに接続するとき、それらを維持する「いくつかの方法」があります。
2) 誰かがサーバーにテキストを送信すると、サーバーはこのテキストを残りのユーザーに「自動的に」送信します。
Observer Pattern
ゴフをベースにしています。そして、この方法は他の方法よりもうまく機能します。しかし、この新しい方法で私が遭遇した問題は次のとおりです。
1) ユーザーに関するどのような「情報」が保存されるか。(IPアドレス、 ... ?)
2)ユーザーに送信する方法は?(ユーザーがサーバーへのリクエストを持っていない場合)。
解決策を教えてください。それが Java または PHP でより詳細である場合は、さらに良いでしょう。