2012-02-02 5 views
2

非常に遅い外部サービスへのWCF呼び出しを頻繁に使用する.net 4で動作するasp.net mvc 3サイトを継承しました。サイトはまだ生きていません。マルチスレッドアプリケーションのWCFプロキシシングルトン

私が見つけた好奇心のあるコードは、WCFクライアントプロキシの使用方法です。すべてのスレッド間で共有されるaspnetアプリケーション全体に対して1つのインスタンスが作成されます。したがって、効果的にグローバル変数。

これは危険ですが、負荷テストでもサイトはエラーなく動作します。サイト内のWCFクライアントで同時呼び出しを防止するガードコードはありません。

誰かがaspネットアプリで本質的にシングルトンWCFプロキシを使用することの安全を確認できますか?フォールトはすべてのスレッドのプロキシを強制終了しませんか?

答えて

3

誰かが、本質的に、ASPネットアプリで シングルトンWCFプロキシであるものを使用しての安全性を確認することはできますか?すべてのスレッドに対して プロキシを強制終了しないでください。

プロキシは、スレッドセーフですが、あなたが言うように、それは、チャネルが再び開かれるべき場合には、故障した状態になる可能性があるため、それは注意して取り扱ってください。同じチャネルファクトリを再利用するために使用しているfollowing sample implementationをご覧ください。高価なものは、チャネル自体ではなく、チャネルファクトリの作成です。

関連する問題