Flexでゲームを開発しています。
このゲームにはAIRバージョンとWebバージョンの両方があります。AIRアプリは、ポートのUDPソケットを使用してサーバーに接続します。Webバージョンの目的は、ユーザーが仕事中、または一部のポートをブロックするファイアウォール/プロキシの背後にあるコンピューターでプレイできるようにすることです。したがって、Webはポート80でhttp接続を使用してサーバーに接続します。
http接続に応答するサーバーコードは、BlazeDSを使用するJavaサーブレットになります。ただし、C#サーバーコード(Webサービスなど)について説明する方が簡単な場合は、問題ありません。UDP要求に応答するサーバーコードは、ソケット接続をリッスンする単純なクラスになります。
私の問題は、UDPとhttpコードを組み合わせる方法がわからないことです。5つのAIRクライアントと5つのWebクライアントがある場合、すべてのクライアントを最新の情報で更新できるように、それらはすべてサーバー内の共通のコレクション変数で満たす必要があります。ソケットをリッスンするクラスをインスタンス化するのは誰ですか?そしていつ?
要約
すると、次のようになります。1.必要なことを実現するために、専用サーバーが必要ですか?
2.誰がUDP処理クラスをいつインスタンス化しますか?
3. udp処理クラスとhttp接続用のサーブレットを一緒に保持することさえ可能ですか?httpがなければ、Tomcatも必要ありません。ただし、プレーヤーコレクションを更新できるように、httpコードとudpコードは一緒に保つ必要があります。UDP処理クラスをインスタンス化し、サーブレットがサーバーにデプロイされたときにソケットをリッスンするように指示することは可能ですか...またはそのようなものですか?
どんなアドバイスでも大歓迎です。
よろしくお願いします、
ミハ