インターネット インフォメーション サービスでのホスティング

インターネット インフォメーション サービス (IIS) アプリケーションの中に Windows Communication Foundation (WCF) サービスをホストする 1 つのオプションがあります。 このホスティング モデルは、ASP.NET や ASP.NET Web サービス (ASMX) Web サービスが使用するモデルと似ています。

IIS バージョン

WCF をホストできるオペレーティング システムと IIS のバージョンの組み合わせは次のとおりです。

  • Windows XP SP2 上の IIS 5.1: この環境は、後で Windows Server 2003 などのサーバー オペレーティング システムに展開される、IIS ホスト型アプリケーションの設計と開発に役立ちます。

  • Windows Server 2003 上の IIS 6.0: IIS 6.0 は、スケーラビリティ、信頼性、およびアプリケーションの分離が強化された高度なプロセス モデルを提供します。 この環境は、HTTP 通信のみを使用する WCF サービスの本運用展開に適しています。

  • Windows Vista および Windows Server 2008 上の IIS 7.0: IIS 7.0 では、IIS 6.0 と同じ高度なプロセス モデルが提供されますが、Windows プロセス アクティブ化サービス (WAS) を使用して、HTTP 以外のプロトコル経由でのアクティブ化とネットワーク通信を可能にします。 この環境は、WCF でサポートされる任意のネットワーク プロトコル (HTTP、net.tcp、net.pipe、net.msmq など) で通信を行う WCF サービスの開発に適しています。 WAS の詳細については、「Windows プロセス アクティブ化サービスでのホスティング」を参照してください。

  • Windows Server AppFabric では、IIS 7.0 および Windows プロセス アクティブ化サービス (WAS) と連携して、NET4 WCF および WF サービスのための充実したアプリケーションのホスト環境が提供されます。 この利点には、プロセス ライフサイクル管理、プロセス リサイクル、共有ホスティング、迅速な障害保護、プロセスの孤立化、オンデマンド アクティブ化、状態監視などがあります。 詳細については、AppFabric のホスティング機能に関するページおよび AppFabric のホスティングの概念に関するページを参照してください。

IIS ホスティングのベネフィット

IIS で WCF サービスをホスティングすることには、いくつかのベネフィットがあります。

  • IIS でホストされる WCF サービスは、ASP.NET アプリケーションや ASMX などの他の種類の IIS アプリケーションと同じように展開、管理されます。

  • IIS はプロセスのアクティブ化、状態管理、リサイクル機能を提供し、ホストされるアプリケーションの信頼性を向上します。

  • ASP.NET と同様に、ASP.NET でホストされる WCF サービスでは、ASP.NET の共有ホスティング モデルが利用されます。ここでは、サーバーの堅牢性とスケーラビリティを向上させるために、複数のアプリケーションが共通のワーカー プロセスに配置されます。

  • IIS でホストされる WCF サービスでは、ASP.NET 2.0 と同じ動的なコンパイル モデルが使用されます。これにより、ホストされるサービスの開発と展開が簡素化されます。

IIS で WCF サービスをホストすることを決定する場合、IIS 5.1 と IIS 6.0 は HTTP 通信のみに限定されることに注意が必要です。 ホスティング環境の選択方法の詳細については、「ホスティング サービス」を参照してください。

IIS にホストされた WCF サービスの展開

IIS でホストされる WCF サービスの開発と展開を行うには、次のタスクを実行します。

  • IIS、ASP.NET、WCF、WCF HTTP アクティブ化コンポーネントなどが正しくインストールおよび登録されていることを確認します。

  • 新しい IIS アプリケーションを作成するか、既存の ASP.NET アプリケーションを再利用します。

  • WCF サービス用の .svc ファイルを作成します。

  • IIS アプリケーションにサービス実装を展開します。

  • WCF サービスを構成します。

これらの各タスクの詳細については、「インターネット インフォメーション サービスでホストされる WCF サービスの配置」を参照してください。

WCF サービスと ASP.NET

WCF サービスは、ASP.NET とサイド バイ サイドでホストするか、または ASP.NET 互換モードでホストできます。このモードでは、サービスにおいて ASP.NET Web アプリケーション プラットフォームが提供する機能を最大限に活用できます。 これらの機能の詳細については、「WCF サービスと ASP.NET」を参照してください。

関連項目