IIS チーム、 Mike Volodarsky
互換性
| バージョン | メモ |
|---|---|
| IIS 7.0 以降 | この記事で説明する機能は、IIS 7.0 で導入されました。 |
| IIS 6.0 以前 | この記事で説明されている機能は、IIS 7.0 より前はサポートされていませんでした。 |
IIS 7 以降の Web サーバーには、次の 3 つの主な利点を提供する完全にモジュール化されたアーキテクチャがあります。
- コンポーネント化
- 拡張性
- ASP.NET 統合
コンポーネント化
すべての Web サーバー機能が スタンドアロン コンポーネント として管理されるようになりました。これにより、簡単に追加、削除、置換できます。 これにより、以前のバージョンの IIS よりもいくつかの主な利点が得られます。
- 攻撃対象領域を減らすことで、サーバーをセキュリティで保護します。 サーフェス領域の削減は、サーバー システムをセキュリティで保護する最も強力な方法の 1 つです。 IIS を使用すると、未使用のサーバー機能をすべて削除して、アプリケーションの機能を維持しながら、可能な限り最小限の領域を実現できます。
- パフォーマンスを向上させ、メモリ占有領域を減らします。 未使用のサーバー機能を削除することで、サーバーが使用するメモリの量を減らし、アプリケーションに対するすべての要求で実行される機能コードの量を減らすことでパフォーマンスを向上させることもできます。
- カスタム/特殊化されたサーバーを構築します。 特定のサーバー機能のセットを選択することで、エッジ キャッシュや負荷分散など、アプリケーション トポロジ内で特定の機能を実行するために最適化されたカスタム サーバーを構築できます。 カスタム機能を追加して、新しい拡張 API に基づいて構築された独自のサーバー コンポーネントまたはサード パーティ製のサーバー コンポーネントを使用して、既存の機能を拡張または置き換えることができます。 コンポーネント化されたアーキテクチャは、IIS コミュニティに長期的な利点をもたらします。Microsoft とサード パーティの開発者の両方で必要とされるため、新しいサーバー機能の開発が容易になります。
IIS では、アプリケーション プールを使用して IIS 6.0 で導入された強力な HTTP プロセス アクティブ化モデルもコンポーネント化されています。 HTTP プロセスアクティブ化モデルは、Web アプリケーションだけでなく、任意のプロトコル経由で要求またはメッセージを受信するために使用できます。 このプロトコルに依存しないサービスは、Windows プロセス ライセンス認証サービス (WAS) と呼ばれます。 Windows Communication Foundation (WCF) には、WAS の機能を活用できるプロトコル アダプターが付属しており、WCF サービスの信頼性とリソースの使用が向上します。
拡張性
開発者は、IIS のモジュールアーキテクチャを活用して、既存の Web サーバー機能を拡張または置き換え、IIS でホストされている Web アプリケーションに価値を追加する強力なサーバー コンポーネントを構築できます。
IIS 用に開発する理由を次に示します。
- Web アプリケーションを強化します。 IIS を拡張すると、Web アプリケーションは、多くの場合、アプリケーション 層で簡単に提供できない機能の恩恵を受けることができます。 IIS ASP.NET またはネイティブ C++ 拡張機能を使用して、開発者は、カスタム認証スキーム、監視とログ記録、セキュリティ フィルター処理、負荷分散、コンテンツ リダイレクト、状態管理など、すべてのアプリケーション コンポーネントに価値を追加するソリューションを構築できます。
- 開発エクスペリエンスの向上。 新しい C++ 拡張モデルは、以前 ISAPI 開発に悩まされていたほとんどの問題を軽減し、堅牢なサーバー コードの記述を促進する簡略化されたオブジェクト指向 API を導入します。 さらに、Visual Studio の統合が向上すると、IIS の開発エクスペリエンスがさらに向上します。
- ASP.NET のフルパワーを使用します。ASP.NET 統合 により、ASP.NET 2.0 の使い慣れたインターフェイス と豊富な ASP.NET アプリケーション サービスを使用して、サーバー モジュールを迅速に開発できます。 ASP.NET モジュールは、ASP、CGI、静的ファイル、その他のコンテンツ タイプに対してサービスを一様に提供でき、以前のバージョンの IIS に制限なくサーバーを完全に拡張できます。
ASP.NET 統合
IIS を使用すると、Web アプリケーションは、ASP.NET 2.0 の強力な機能と拡張性を完全に活用できます。 フォーム ベースの認証、メンバーシップ、セッション状態などの ASP.NET 機能は、すべての種類のコンテンツに使用でき、Web アプリケーション全体で統一されたエクスペリエンスを提供します。 開発者は、使い慣れた ASP.NET 機能拡張モデルと豊富な .NET API を使用して、ネイティブ C++ API を使用して記述された機能と同じくらい強力な IIS サーバー機能を構築できます。
以下のリンクを使用して、IIS 構成の側面の学習を開始し、IIS.NET ですぐに利用できるリソースを含むキットの概要とダウンロードに関するラボを参照してください。
学習を開始する
- IIS モジュールの概要
- ASP.NET IIS との統合
- IIS 統合パイプラインを利用する方法
- エンド ツー エンドの機能拡張の例
- カスタマイズされたサーバーの構築
- .NET を使用したモジュールの開発
- ネイティブ (C\C++) モジュールの開発
始めましょう
- Windows Server 2008 R2 評価エディション と Virtual Labs (
https://www.microsoft.com/server-cloud/windows-server/2008-r2-trial.aspx)
ダウンロード