2009-09-04 7 views
2

私はSilverlight 3チャットアプリケーションを開発しました。このアプリケーションでは、1人のユーザーが複数のユーザーと同時にチャットを行います。私のアプリケーションでSilverlightでwcfを使用して単一のブラウザウィンドウで複数の接続を作成する

チャットウィンドウが Silverlightコントロールであり、ユーザーが すべてのチャットウィンドウが WCFとの接続を行う 単一ブラウズwindow.meansに同じ 時間に10の以上のチャットウィンドウを開くことができます。

私は、throttlingserviceの動作を使用して、すでにwcfの接続制限を増加させています。それは、マルチ・クリエイションのために働きます。異なるマシン上で同時に開いている複数のブラウズを意味します。 1人のユーザーが同じ時間に10人以上のユーザーとチャットした場合、11回目の接続でその休憩を行うとします。

私はこの問題の解決方法を教えてください。

おかげ

+0

エラーメッセージは何ですか?それはまさにそれが起こるか? –

+0

エラーメッセージは通信の例外です – Tarun

+0

これは唯一のメッセージですか?エラーメッセージのテキストはありませんか? –

答えて

0

私はあなたのクライアントの実装に問題があると思います。クライアントはサーバへの接続を長時間開いたままにしていますか?理想的には、クライアントとサーバーの間に非常にコンパクトで短い要求/応答メッセージを置くだけで、各接続が短命になるようにするのが理想的です。

ユーザーが各クライアントから同時にメッセージを送信できないと思われます。したがって、クライアントとサーバーの間で同時に複数の接続を開く必要はほとんどありません。

+0

しかし、すべてのチャットウィンドウがループで開き、チャットウィンドウが10未満のチャットウィンドウはすべて開かれますが、10以上の場合は11回目に通信例外が発生します。 – Tarun

0

他のすべてのチャンネルが閉じている場合は例外が発生しますか?アクティブな接続数には制限があります。開いているウィンドウが10個以上ある場合は、その11番目の接続を開こうとしないように、ウィンドウ間の接続を解除する必要があります。