4

コンソール アプリケーションでホストされている WCF サービスは、どのくらいの負荷を処理できますか? IIS でホストされている WCF と同じくらい着信要求を処理できますか?

追記事項: リクエストは同時に到着できますか?

コンソール アプリでホストされている WCF サービスがあります。この WCF サービスを Web アプリ内から呼び出します。その Web アプリには、何百ものリクエストが同時に存在する可能性があります。

大量のリクエストをシミュレートしましたが、WCF サービスをホストするコンソール アプリが実際に同時にまたは順番に応答しているかどうかを確認できませんでした。

4

2 に答える 2

7

WCF サービスがホストされている場所は関係ありません。それはすべて、バインディング、エンドポイント、エンドポイントの動作、およびサービスの動作設定に依存します。最後に、サービスのインスタンス化モードと同時実行タイプを (属性を介して) 設定する方法にも依存します。

これらの設定はインスタンスに引き継がれServiceHostます。コンソール アプリで実行されている場合でも、アプリケーション自体は、ServiceHost指定した設定に基づいて、WCF サービスのランタイム環境を作成するコンテナーです。

興味のあることについては、こちらを参照してください(並行性とスロットリング)。また、WCF インスタンス モードに関する非常に広範なものもあります。

パフォーマンス上の理由から、InstanceContextMode で指定できるシングルトン サービスを使用することをお勧めします。何百ものリクエストが入ってくる場合、リクエストごとにサービス インスタンスが作成されても、同時実行には何の役にも立ちません。すべてのサービス操作がスレッドセーフかどうかを確認して、ケースでシングルトンが可能かどうかを分析する必要があります。

于 2012-07-02T09:08:07.160 に答える
1

コンソールアプリケーションでホストされているWCFサービスはどのくらいの負荷を処理できますか?

コンピューターがセルフホストのWCFサービスにできる限りのこと。

ホストはコンソールアプリでもWindowsサービスでもかまいませんが、負荷の観点からは同じです。

于 2012-07-02T09:24:02.600 に答える