 |
.NET Remoting Unter Remoting ist ein Zugriff auf (Programmier-) Objekte über gewisse Grenzen hinweg zu verstehen. Mögliche Grenzen in einer Netzwerkstruktur können dabei sein: ein Computer, ein Prozess, eine Anwendungsdomäne o.ä. Folgende Elemente sind zur Herstellung einer Remotingverbindung nötig: Nachricht: Was soll übertragen werden? Channel: Mit welchem Protokoll soll übertragen werden? Format: Mit welchem Format soll übertragen werden?
.NET Remoting bietet unter dem .NET Framework die Möglichkeit, verteilte Anwendungen zu entwickeln und eine Kommunikation mit anderen Anwendungsdomänen in demselben Prozess herzustellen. Dabei kann jede .NET-Anwendung als Host für Remotingobjekte fungieren und Dienste für Clients in einem Netzwerk bereitstellen. Remoting ist unter .NET die Technologie, die DCOM (Distributed Component Object Model) in der COM-Technologie bereitstellte. Um eine remotingfähige Anwendung zu Erstellen, benötigt man nach Angaben von Microsoft folgende drei Voraussetzungen: Ein remotefähiges Objekt, eine Hostanwendungsdomäne, die die Remoteverbindung überwacht, eine Clientanwendungsdomäne, die Anforderungen für das Objekt sendet.
Für die Kommunikation innerhalb eines .NET Remoting-Prozesses stellt die .NET CLR in der Anwendungsdomäne des Clients einen Proxy zur Verfügung, mit dem das aufrufende Objekt lokal kommunizieren kann. Der Proxy ist also gewissermaßen eine Kopie des entfernten Objektes, auf dessen Metadaten hierfür von der CLR zugegriffen wird. Der Proxy übergibt die zu sendende Nachricht an ein Channel-Objekt, das wiederum die Informationen über ein geeignetes Format an ein Channel-Objekt der entfernten Anwendungsdomäne überträgt. Falls das Zielobjekt dort schon vorhanden ist, wird es vom Channel lokalisiert, ansonsten wird es neu erstellt. 
|  |