エンタープライズ:ニュース 2003/05/16 22:55:00 更新


Windows Server 2003とVisual Studio .NET 2003の底力

MSCE 2003のアプリケーション プラットフォーム トラックから。「Windows Server 2003 & Visual Studio .NET 2003 アプリケーション サーバーの実力」と題して、マイクロソフト エンタープライズパートナービジネス推進本部 システムズエンジニアリング部 第3グループの平井 昌人氏によって行われた。

 このセッションでは、Windows Server 2003とVisual Studio .NET 2003の組み合わせが、アプリケーション プラットフォームとしていかに進化しているのかを、デモを中心に解説された。また、デモ中で示されたWindows Server 2003のWindows 2000 Serverと比較した際のパフォーマンスの高さが印象的であった。

 内容が盛りだくさんであったため、最初からハイペースで進められたこのセッションで、最初はサービスを提供するという意味でのアプリケーション サーバで必要な機能、例えばアプリケーション実行環境である.NET Framework 1.1、WebサーバのIIS6.0、XML Webサービス管理機能としてのEnterprise UDDI Serviceといった機能が、Windows Server 2003ではすべて搭載されていることが示され、個々の機能について話が及んだ。

 まず、アプリケーション開発および実行環境としての.NET Framework 1.1について、COM+やMSMQなどをクラスライブラリでサポートされていることに触れ、.NET Frameworkが共通ランタイムであり、VB、C++、C#、J#などの.NET Framework対応言語のいずれで開発するとしても、同じクラスライブラリでを利用できることが語られた。.NET Framework 1.1での新機能としては、ASP.NETモバイルコントロールによる各種携帯端末やPDAなどへの対応や、IPv6対応、DB2やOracleへ接続する際のデータプロバイダ、.NET Framework 1.0と1.1の同時実行をサポートするサイド・バイ・サイドなどがあげられる。ここでは、.NET Framework 1.0で開発されたプログラムが、.NET Framework 1.0と1.1の混在環境において、プログラムの再コンパイルなしに設定ファイルだけでどちらの環境を使うかを指定できるということが、サイド・バイ・サイドのデモとして披露された。

 IIS6.0では、HTTPリクエストを受け付ける処理がまったく新規に設計されたことでカーネル側へ移動し、Webガーデンという複数のワーカープロセスを管理する仕組みとあわせてパフォーマンスが向上。また、プロセスリサイクリングやラピッドフェールプロテクション機能により、堅牢性が向上した。ここでのデモでは、Windows 2000 Server上のASP+ADOのアプリケーションと、同じ機能のWindows Server 2003上のASP.NET+ADO.NETのアプリケーションを実行させ、そのパフォーマンスを比較した。RPS(Request Par Second:1秒あたりのHTTPリクエスト処理数)という単位で計測したところ、前者で105RPS、後者で309RPSと、単純にWindows Server 2003に移行させただけで約3倍のパフォーマンスが得られることを示した。さらに、カーネルで実行されるHTTPリクエスト処理部にあるキャッシュを利用することで、985RPSとさらに約3倍ものパフォーマンスが得られることも示された。また、IIS6.0上で実行されるASP.NETについては、冗長性やロードバランシングなどで必要となる、セッション情報をサーバをまたがって保持できる仕組み−アウトプロセスモードやSQL Serverモードについても説明がなされた。

 アプリケーションプラットフォームとして必要な機能の1つとして、メッセージング機能があげられる。その例としてMSMQによるメッセージの送受信、また、受信時にトリガを設定してアプリケーションを実行するといった機能が解説された。セッション中、LANケーブルを抜いてオフライン状態を作り出し、この状態でもアプリケーション上でメッセージの送信が正常に実行でき、オンラインになったところで、サーバ側にメッセージが届き、トリガによってアプリケーションが実行されるというところもデモで見ることができた。

 アプリケーションコンポーネント管理機能であるCOM+に関しては、そのパフォーマンスの高さが示された。アプリケーションプーリングと呼ばれる、コンポーネントを実行するプロセスを複数起こし、プールしておく機能を説明、プールのないWindows 2000 Server上と、10個のプールを指定したWindows Server 2003上で約5倍のパフォーマンスの向上があることをデモで示した。

 セッション最後のデモでは、BITS(Background Intelligent Transfer Service)が披露された。この機能はWindows XPなどの自動更新機能に使われているもので、帯域の空いたところを見計らってファイルを転送するというものだ。デモでは転送の途中でLANケーブルを抜きオフラインにした後で再び接続して、自動的にファイルの転送が継続されることを見せた。このデモは、BITS機能をユーザーアプリケーションにも組み込めることを示すものだ。

 内容が盛りだくさんであった上に、デモの内容も濃かったため、時間内に終了しなかったが、.NET Framework 1.1、Visual Studio .NET 2003、IIS6.0およびASP.NET、Enterprise UDDI Service、MSMQ、COM+などWindows Server 2003を取り巻く技術が数多く説明された。これらによって、アプリケーションプラットフォームとしてWindows Server 2003を選択するべき理由が多数示されたことになる。「.NETやるならWindows Server 2003!」という平井氏の締めくくりの言葉が印象的だった。

関連記事
▼Windows .NETチャンネル

[宮内さとる,ITmedia]