0

IISでホストされているWCFサービスと、その日の最初の使用時に最初のサービス呼び出しに応答するのに時間がかかるクライアントWindowsアプリケーションがあります。これは、IISが一定期間使用されていないサービスをシャットダウンしたためだと思います(遅延はサービスの再起動時間です)。アプリケーションの起動時に非同期呼び出しを行うことでこれを軽減できるかどうか疑問に思っていました(サービスを開始するためだけに)。したがって、アプリケーションの開始時に、サービスへの接続を開くだけの「ファイアアンドフォーゲット」バックグラウンドスレッドを作成しました。私のアプリケーションが独自の起動を終了し、WCFサービスを使用したい場合、スレッドは(おそらく)が終了し、ユーザーがサービスの起動遅延に遭遇することはありません。

これは合理的ですか?WCFサービスへのチャネルを開くだけで、サービスを開始できますか、それともダミーのメソッドを記述して呼び出す必要がありますか?

ありがとう

ロス

4

2 に答える 2

1

アプリでこのタスクを本当に処理する必要があるかどうかを確認し、IIS 用のAppWarm-Up モジュールをチェックアウトします。おそらく、サービスにコードを追加せずにこれを使用できます。

于 2012-07-10T11:13:28.827 に答える
0

これは合理的ですか?

私には良いアプローチとは思えません。サービスのホスト方法を制御できる場合は、自己ホストすることをお勧めします。

于 2012-07-10T13:26:14.757 に答える