Sistemas distribuidos
.NET Remoting
.NET Remoting
Índice
Índice
– Introducción – Arquitectura – Objetos Remotos – Ejemplos – Ficheros de Configuración – Concesiones de tiempo de los objetos remotos – Extensión
2
.NET Remoting
Índice
Índice
– Introducción – Arquitectura – Objetos Remotos – Ejemplos – Ficheros de Configuración – Concesiones detiempo de los objetos remotos – Extensión
3
.NET Remoting
Introducción
• •
Un AppDomain (Dominio de Aplicación) es el entorno donde se ejecuta la aplicación. La comunicación entre objetos de distintos AppDomain no puede hacerse de forma directa.
P1 AppDomain
Object
P2 AppDomain
Object
AppDomain
Object
Object
Object
4
.NET Remoting
Introducción
•.NET Remoting es la solución dentro del Framework .NET de Microsoft para que los objetos de distintos dominios de aplicaciones, procesos y equipos se puedan comunicar sin problemas. Marco variado y extensible para Ideas fundamentales encontradas ya en CORBA o Java RMI, aunque la combinación final es algo diferente. Gran flexibilidad. Tecnologías independientes del lenguaje de programación y conlas comunicaciones en un nivel de abstracción elevado. Modelo de programación sencillo y eficaz, así como compatibilidad en tiempo de ejecución que permite interacciones transparentes. Paradigma: Orientación a Objetos Concepto: Objeto Remoto
5
•
• • •
• •
.NET Remoting
Índice
Índice
– Introducción – Arquitectura – Objetos Remotos – Ejemplos – Ficheros de Configuración –Concesiones de tiempo de los objetos remotos – Extensión
6
.NET Remoting
Arquitectura .Net Remoting
Cliente
Llamada a método
Objeto Remoto
Llamada a método
Proxies
Mensaje Transformador Stream
Dispatcher
Mensaje Transformador Stream
Canal HTTP, TCP
Canal
7
.NET Remoting
Arquitectura .Net Remoting
•
Proxies: Objetos locales que representan a objetos remotos.Aceptan las llamadas y las redirigen a los objetos remotos • Transparent Proxy
Cliente
– –
Proxies
Llamada a método Transparent Proxy Mensaje Real Proxy
Convierte la llamada a método remoto a un mensaje No puede ser modificado (Sealed) Envía el mensaje anterior al objeto remoto (haciendo uso de los elementos de la arquitectura de .NET Remoting) El programador puede modificar sucomportamiento
8
•
Real Proxy –
–
.NET Remoting
Arquitectura .Net Remoting
•
Transformador: Serializan un mensaje para convertirlo en un formato transferible a través de un canal de comunicaciones.
Cliente
Llamada a método Proxies Mensaje
En .NET Remoting disponemos de dos transformadores: • • SOAP (SoapFormatter) Binario (BinaryFormatter)
Transformador
9
.NETRemoting
Arquitectura .Net Remoting
•
Canal: Es el responsable de transmitir los mensajes
En .NET Remoting disponemos de tres canales: • Cliente HttpChannel: Serializa SoapFormatter Buena elección para aplicaciones basadas en internet (interoperabilidad y escalabilidad)
Llamada a método Proxies Mensaje
•
Transformador
Stream Canal
TcpChannel: Serializa BinaryFormatter Buena elección para aplicaciones en una misma LAN, no recomendado para internet
•
IpcChannel: Serializa BinaryFormatter Para aplicaciones en un mismo equipo. Similar a las tuberías.
10
.NET Remoting
Índice
Índice
– Introducción – Arquitectura – Objetos Remotos – Ejemplos – Ficheros de Configuración – Concesiones de tiempo de los objetos remotos – Extensión
11
.NETRemoting
Objetos remotos
Under .NET, a remote object is an object which resides in a different application domain than the caller
Microsoft .NET for Programmers FERGAL GRIMES. Manning
12
.NET Remoting
Objetos remotos
•
Existen dos tipos de objetos remotos, en función de si el objeto remoto cambia de dominio de aplicación: – Objetos “Marshall By Reference” (MBR) • • – El cliente...
Regístrate para leer el documento completo.