異なるアプリケーション ドメインのオブジェクトどうしの .NET リモート処理によるアクセス

異なるプロセスを実行するオブジェクト間に通信を確立する - 同じコンピュータ上や遠く離れた数多くのコンピュータ間での通信を確立することは、開発する者にとっての共通の目標です。特に広範囲にわたる分散アプリケーションを構築する場合は、より重要になってきます。これまでは、この目標を実現するには、通信ストリームの両端を担うオブジェクトだけでなく、下位レベル プロトコルのホスト、アプリケーション プログラミング インターフェイス、そして構成ツールや構成ファイルに関する深い知識が必要でした。複雑な作業であるために、豊富な経験と専門的な取り組みを必要としていたわけです。

.NET Framework には、プロトコルやエンコーディングに詳しくなくても、すばやく簡単に作業できるようにする通信方法がいくつか用意されています。そのため、Web アプリケーションを短期間で開発する必要がある場合でも、また、複数のプロトコルやシリアル化した最適化を使って、多数のコンピュータやオペレーティング システム上で実行する全社的規模の重要なアプリケーションを時間をかけて開発する場合のどちらでも、.NET Framework はサポートします。複数のプロセス間通信が複雑な作業であることに変わりはありませんが、その大部分を .NET Framework によって処理できます。

.NET リモート処理によって、クライアント アプリケーションは、同じコンピュータまたはネットワークで利用できる他の任意のコンピュータの、他のプロセスのオブジェクトを使用できます。また、.NET リモート処理を使用すると、同じプロセスの他のアプリケーション ドメインと通信できます。.NET リモート処理によって、プロセス間通信の抽象的な手法が提供されるため、特定のサーバーとクライアントのプロセスや特定の通信機構からリモート処理可能オブジェクトを分離できます。この結果、柔軟性が向上し、カスタマイズも簡単になります。クライアントまたはサーバーを再コンパイルせずに、通信プロトコルの種類やシリアル化形式の種類を変更できます。また、リモート処理システムは、特定のアプリケーション モデルを前提としません。Web アプリケーション、コンソール アプリケーション、Windows サービスなど、ほぼすべての種類のプログラムから通信できます。任意の種類の実行可能アプリケーションを、リモート処理サーバーとして使用できます。どのようなアプリケーションでもリモート処理オブジェクトを管理できるため、同一のコンピュータまたはネットワーク上の任意のクライアントにサービスを提供できます。

このセクションの内容

関連項目