WhidbeyへのいざないVisual Studio Magazine(7/7 ページ)

» 2004年08月13日 16時50分 公開
[Don Kiely,FTPOnline]
前のページへ 1|2|3|4|5|6|7       
Indigoで繋がれ!

 .NETアプリケーションと他のマシンを接続させたいのなら、DCOMやCOM+、Microsoft Message Queuing (MSMQ)、.NET remoting、ASP.NET Web services、.NET Enterprise Servicesといったアルファベットのゴッタ煮から選択する必要がある。Microsoftは、このことが接続を行う時に開発者にとって逆効果になることを認識しており、「Indigo」というコードネームの新しいフレームワークにこれらのテクノロジーを分離している。

 Indioのサービスを採用するアプリケーションは、ステートレスとステートフルの両モードを操作できる。ステートレスモードは現在のWebサービスに似たもので、サービスはシンプルにストックプライスなどの情報を発行し、利用者からのリクエストを許可する。情報の配布が成功したかどうか、サービスはそれを知らず、また、特殊な配慮も行わない。

 ステートフルモデルは .NET remotingに類似している。この2つのIndigoサービスアプリケーション間にコミュニケーションチャネルを確立し、コールバックメソッドとイベント、分散トランザクション、セキュアで信頼性のあるメッセージングをサポートする。

簡素な構造のIndigo

 Indigoは分散アプリケーションの開発を簡素化するために、階層型のAPIを提供する。大部分のアプリケーションは最上位レイヤをシンプルに使用することで、サービスとクライアントアプリケーションの双方をサポートする。最初のASP.NET Webサービスの開発と利用が、どれほど簡単だったかを覚えているだろうか? Indigoのサービスレイヤは、機能を大きく拡張しつつ、そのシンプルさのレベルを保つ。

 サービスレイヤはマネージドクラスの1つのセットで、厳密に型付けされたメッセージの送受信を実装する。ユーザーのアプリケーションは、メッセージを送信するためにメソッドをコールし、そのメソッドのリターン値の中にレスポンスを受信する。ユーザーはイベントハンドラをインプリメントでき、適切なメッセージを受信した時に、それをIndigoがコールする。ユーザーは自由に、メッセージの処理を直接にできるが、それは一般的に(メソッドやイベント、コールバックを備えた)オブジェクトの場合と同じく容易であり、苦痛以外の何ものでもないメッセージプロセシングを、Indigoのシリアライゼーションシステムに行わせる。

 このサービスレイヤが提供する以上のコントロールをユーザーアプリケーションが必要とする場合、基礎をなすチャネルおよびポート、トランスポートに対して、直接的にアクセスすることができる。例えば、Indigoは独創的にHTTPとTCP/IPをサポートするが、必要に応じてデフォルトのインプリメンテーションを上書きできる。

互換性は重要な要素

 IndigoのWebサービスアプリケーションは、SOAP(Simple Object Access Protocol)とWSDL(Web Services Description Language)をインプリメントし、それらの仕様を理解する各種のプラットフォーム上のWebサービスとの相互運用性を実現する。この部分においてIndigoのWebサービスアプリケーションはASP.NET Webサービスに似ているが、Webサービスの仕様に関する知識とインプリメンテーションを必要とすることなしに、Indigoはセキュリティとリライアビリティ、分散トランザクションへのサポートを加えている。

 もし非.NETプラットフォームとの相互運用性を望まないのなら、ユーザーアプリケーションをIndigo RemoteObjectサービスとして実装してしまってもよい。IndigoのRemoteObjectサービスアプリケーションは.NET remotingベースのアプリケーションによく似た振る舞いとなるが、広範囲な分散トランザクションに対しても、認証と暗号を使ったセキュリティのサポートを加える。ユーザーは、メッセージが到達したときに自動的にアクティブになるように、Indigo RemoteObjectサービスを設定可能である。

 Indigoが約束するのは、新しい分散型のサービス指向なアプリケーションの開発を、大幅に簡素化する点だ。Microsoftが我々に保証するのは、以前に述べたように、Longhornがテクノロジーに関するアルファベットのゴッタ煮をサポートすることで、Indigoが既存のコードの書き直しを要求しないということだ。


 Phil WeberはMicrosoft .NET テクノロジーに特化したソフトウェア開発者。彼のWebサイトはhttp://www.philweber.comだ。

前のページへ 1|2|3|4|5|6|7       

© Copyright 2001-2005 Fawcette Technical Publications

注目のテーマ