Freigeben über


Übersicht über .NET Remoting

Mit .NET Remoting können Sie auf einfache Weise weit verteilte Anwendungen erstellen, wobei sich die einzelnen Anwendungskomponenten auf demselben Computer oder weltweit an verschiedenen Standorten befinden können. Sie können Clientanwendungen erstellen, die Objekte in anderen Prozessen auf demselben Computer oder auf einem beliebigen anderen, über das Netzwerk zugänglichen Computer verwenden. Über .NET Remoting ist auch die Kommunikation mit anderen Anwendungsdomänen in demselben Prozess möglich. (Weitere Informationen über das Programmieren von Anwendungsdomänen finden Sie unter Programmieren mit Anwendungsdomänen.)

.NET Remoting stellt einen abstrakten Ansatz zur prozessübergreifenden Kommunikation dar, bei dem das remotefähige Objekt aus einer bestimmten Client- oder Serveranwendungsdomäne sowie aus einem bestimmten Kommunikationsmechanismus herausgelöst wird. Infolge dessen ist es flexibel und einfach anzupassen. Sie können ein Kommunikationsprotokoll bzw. ein Serialisierungsformat durch ein anderes ersetzen, ohne dass der Client und der Server neu kompiliert werden müssen. Zudem setzt das Remotingsystem kein bestimmtes Anwendungsmodell voraus. Sie können aus einer Webanwendung, einer Konsolenanwendung, einem Windows-Dienst und einer Vielzahl anderer Programme kommunizieren. Remotingserver können ebenfalls beliebige Anwendungsdomänen darstellen. Jede Anwendung kann als Host von Remotingobjekten fungieren und ihre Dienste für alle Clients auf dem eigenen Computer oder in einem Netzwerk bereitstellen.

Um mit .NET Remoting eine Anwendung zu erstellen, in der zwei Komponenten direkt über die Grenze einer Anwendungsdomänen hinweg kommunizieren, müssen Sie lediglich Folgendes erstellen:

  • Ein remotefähiges Objekt.
  • Eine Hostanwendungsdomäne, die Anforderungen für dieses Objekt überwacht.
  • Eine Clientanwendungsdomäne, die Anforderungen für dieses Objekt sendet.

Selbst in einer komplexen Anwendung mit mehreren Clients und Servern kann .NET Remoting auf diese Weise eingesetzt werden. Die Hostanwendung und die Clientanwendung müssen ebenfalls mit der Remotinginfrastruktur konfiguriert werden, und es sind die aus der Remotinginfrastruktur resultierenden Fragen zu Lebensdauer und Aktivierung zu berücksichtigen.

In diesem Abschnitt

  • Erstellen einer grundlegenden .NET Remoting-Anwendung
    Veranschaulicht das grundlegende Szenario für .NET Remoting, bei dem ein remotefähiger Typ, eine Listeneranwendung und eine Konfigurationsdatei sowie eine Clientanwendung und eine Konfigurationsdatei erstellt werden.
  • .NET-Remotingarchitektur
    Beschreibt die Architektur des .NET Remoting-Systems.
  • Erstellen remotefähiger Objekte
    Beschreibt die Remotegrenzen und das Implementieren von Typen, die über diese Grenzen hinweg aktiviert werden können.
  • Aktivierung und Lebensdauer von Objekten
    Beschreibt die verschiedenen Typen der Remoteaktivierung und das Verwalten der Lebensdauer von Remoteobjekten.
  • Channel
    Beschreibt die systemdefinierten Channel und enthält die erforderlichen Informationen für die Auswahl des für das Szenario am besten geeigneten Channels.
  • Konfiguration
    Beschreibt die grundlegenden Konfigurationsanforderungen der .NET Remoting-Infrastruktur, die für diese Anforderungen zu verwendenden Konfigurationstypen sowie die speziellen Erfordernisse verschiedener Server- und Clientanwendungsdomänen.
  • Versionskontrolle
    Beschreibt die Funktionsweise der Versionskontrolle in einem Remoteszenario.
  • Sicherheit
    Erläutert die Sicherheitsanforderungen für Remoting und die grundlegenden Ansätze zum Erstellen sicherer Remoteanwendungen.
  • Asynchrones Remoting
    Beschreibt die asynchrone Programmierung in einem Remotingszenario.
  • CallContexts und direktes Remoting
    Beschreibt, wie zusätzliche Daten mit Remotemethodenaufrufen unter Verwendung von CallContext übergeben und Objekte zur Remoteverwendung dynamisch veröffentlich werden.

Verwandte Abschnitte

  • Erweitertes Remoting
    Beschreibt die grundlegenden Aspekte der Interception und Erweiterung, mit denen die .NET Remoting-Architektur angepasst werden kann.
  • Schema für Remoteeinstellungen
    Enthält Referenzinformationen zu den Elementen, mit denen .NET Remoting über eine Konfigurationsdatei konfiguriert werden kann.