スケールアップ中のチャット クライアント サーバー アプリケーションがあります。そのため、2 つのチャット サーバー間でサーバー間通信を行う必要があります。
問題は次のとおりです。2つのサーバーAとBがあるとします。ここで、クライアントC1がサーバーAに接続されたTCPであり、クライアントc2がサーバーBに接続されたTCPであるとします。問題は、同じアプリケーションとして、クライアントC1とc2がそれぞれを識別できる必要があることです。その他はログインしてオンラインで利用できますが、サーバー間通信がないため発生していません。
考えられる解決策 1 は次のとおりです。TCP 接続を使用して、サーバー A とサーバー B を相互にログインします。ここでは、ログイン XML メッセージ (文字列) と DataInputStream を TCP 接続を介して他のサーバーに転送できます。したがって、すべてのクライアントが各サーバーにアクセスできるように、すべてのログインが他のサーバーに転送され、クライアント C1 はクライアント C2 をログイン (オンライン) として見ることができ、その逆も同様です。
解決策 1 の問題点: クライアント C1 がクライアント C2 をオンラインで利用可能として認識し、クライアント C1 がクライアント C2 にメッセージを送信するとします。サーバーAは、サーバーAではなくサーバーBで確立されたクライアントC2のDatainputStreamに書き込もうとします。コードがここで壊れ、サーバーAがクライアントC2にメッセージを送信できないという問題があります。 .
任意の入力をいただければ幸いです。
ありがとう