You are on page 1of 8

Instituto Tecnolgico Superior de Ptzcuaro

Desarrollo de aplicaciones para ambientes distribuidos Tema: principales tecnologas y estndares que se requieren en una aplicacin distribuida

Profesor: Alfredo Ayala Ortega Barrera Rodrguez Mara de la Salud

05 de marzo de 2012

Modelos de programacin A la hora de disear una aplicacin distribuida, puede elegirse entre varios modelos nuevos de programacin para habilitar el establecimiento de comunicaciones: y ASP.NET: Pueden crearse servicios Web XML con el marco de trabajo de pginas ASP.NET. Los servicios as creados estarn habilitados para tener acceso a las abundantes funciones de .NET Framework, como la autenticacin y el almacenamiento en cach. Para obtener ms informacin, vea Servicios Web XML en cdigo administrado. Servidor ATL: Tambin pueden crearse servicios Web XML con el servidor ATL, que ofrece un conjunto de clases que extienden la biblioteca ATL (Active Template Library) y le proporcionan pleno acceso a la funcionalidad de IIS a travs de ISAPI. El servidor ATL proporciona clases que le permiten al programador controlar fcilmente aspectos como el almacenamiento en cach, el agrupamiento de subprocesos y los estados de sesin. Para obtener ms informacin, vea Servicios Web XML creados con servidor ATL. Entorno remoto de .NET: El entorno remoto de .NET puede utilizarse para crear una solucin de correspondencia imprecisa con servicios Web XML o una solucin de correspondencia estricta con un protocolo binario. Para obtener ms informacin, vea Informacin general sobre el entorno remoto de .NET.

El entorno remoto de .NET proporciona un marco de trabajo que permite la interaccin de objetos entre distintos dominios de aplicacin. Este marco de trabajo incluye varios servicios, como la activacin y el control de la duracin de objetos o canales de comunicacin encargados del transporte de mensajes entre aplicaciones remotas. Utiliza formateadores para codificar y descodificar los mensajes antes de ser transportados por el canal. Las aplicaciones pueden utilizar codificacin binaria cuando sea fundamental obtener un elevado rendimiento o codificacin XML cuando sea esencial la interoperabilidad con otros marcos de trabajo de interaccin remota. Toda la codificacin XML utiliza el protocolo SOAP para transportar mensajes entre dominios de aplicacin. Para obtener ms informacin, vea Acceso a objetos en otros dominios de aplicacin con el entorno remoto de .NET. Puntos a tener en cuenta A la hora de examinar los distintos modelos de programacin para elegir el ms adecuado, es importante tener en cuenta las exigencias de cada aplicacin, pues influyen y hasta pueden ser determinantes en la decisin.

Amplitud del alcance a clientes Las aplicaciones consiguen ser de amplio alcance cuando permiten el acceso a los componentes a una gran variedad de clientes mediante el uso de tecnologas que no se limitan a un modelo de plataforma u objeto concreto. Correspondencia estricta o imprecisa Las aplicaciones de correspondencia estricta emplean mtodos de comunicacin que imponen interdependencias personalizadas entre las partes distribuidas de la aplicacin (por ejemplo, la exigencia, para comunicarse, de una tecnologa especfica para la plataforma o de un conocimiento previo de protocolos propietarios). Por su parte, las aplicaciones de correspondencia imprecisa utilizan mtodos con un grado mnimo de requisitos para que se produzca la comunicacin (por ejemplo, el uso de datos auto descriptivos o de protocolos tan extendidos como HTTP y XML). Formato y codificacin de mensajes Tanto los servicios Web XML como el entorno remoto de .NET emplean una comunicacin basada en mensajes. El formato de los mensajes y la codificacin de los datos que stos contienen han de determinarse en tiempo de diseo. La combinacin de formato y codificacin que se elija puede limitar la participacin de ciertos tipos de clientes. Fidelidad del sistema de tipos La fidelidad del sistema de tipos indica que la informacin de tipos no se pierde en el proceso comunicativo. Por ejemplo, cuando el formateador binario del entorno remoto de .NET serializa un objeto, conserva su informacin de tipos. Invirtiendo el proceso, puede deshacerse la serializacin para obtener un duplicado exacto del objeto original. Para poder aprovechar las ventajas de la fidelidad del sistema de tipos, los dos participantes en la comunicacin han de utilizar el mismo sistema de tipos. Dos aplicaciones de .NET Framework, por ejemplo, s pueden aprovecharse de estas ventajas, pues ambas utilizan el sistema de tipos comn definido por Common Language Runtime. Rendimiento Descuidar el rendimiento de una aplicacin lleva inevitablemente a un mal funcionamiento. El rendimiento de una aplicacin queda determinado tanto en el tiempo de diseo como en el de ejecucin. Una cuestin que hay que tener muy en cuenta a la hora de elegir cmo ha de ser el acceso a un componente distribuido es el efecto que tendr en el rendimiento de la aplicacin.

Administracin de estado Un componente de la capa de lgica empresarial que deba conservar el estado entre llamadas consumir recursos. Si esto se multiplica por el nmero de posibles clientes, se ve que la cantidad de recursos consumidos aumenta, junto con la posibilidad de que se d contencin de recursos. Un componente as, por tanto, dificulta enormemente la capacidad de escalamiento de la aplicacin. Interoperabilidad COM Los componentes COM constituyen un valioso recurso para aplicaciones presentes y futuras. Del mismo modo, puede utilizarse un cliente COM para crear una instancia de una clase pblica en un ensamblado .NET y llamar a los miembros pblicos de esa clase. En todos los casos se utilizan las caractersticas de interoperabilidad COM de .NET Framework para hacer posible la comunicacin. Tecnologas orientadas a los objetos distribuidos Las tres tecnologas importantes y ms usadas en este mbito son: 1. RMI.- Remote Invocation Method.- Fue el primer fremework para crear sistemas distribuidos de Java. El sistema de Invocacin Remota de Mtodos (RMI) de Java permite, a un objeto que se est ejecutando en una Mquina Virtual Java (VM), llamar a mtodos de otro objeto que est en otra VM diferente. Esta tecnologa est asociada al lenguaje de programacin Java, es decir, que permite la comunicacin entre objetos creados en este lenguaje. 2. DCOM. - Distributed Component Object Model.- El Modelo de Objeto Componente Distribuido, est incluido en los sistemas operativos de Microsoft. Es un juego de conceptos e interfaces de programa, en el cual los objetos de programa del cliente, pueden solicitar servicios de objetos de programa servidores en otros ordenadores dentro de una red. Esta tecnologa est asociada a la plataforma de productos Microsoft. 3. CORBA. - Common Object Request Broker Architecture. - Tecnologa introducida por el Grupo de Administracin de Objetos OMG, creada para establecer una plataforma para la gestin de objetos remotos independiente Del lenguaje de programacin.

Las tecnologas inalmbricas, en los ltimos aos, estn alcanzando la madurez necesaria para permitir el acceso a una red, sin la necesidad de la utilizacin de los cables tradicionales de conexin.

A continuacin mostramos un conjunto de tecnologas que contribuyen al desarrollo de las conexiones inalmbricas: GSM (Global System for Mobile communications): El sistema global para comunicaciones mviles, es un estndar para comunicacin utilizando telfonos mviles que incorpora tecnologa digital. Permite utilizar el sistema SMS (servicio de mensajes cortos), para enviar y recibir mensajes de texto. Es la evolucin tecnolgica de los telfonos mviles anlogos. GPRS (General Packet Radio Service): Es un sistema de transmisin que funciona en el entorno de la telefona mvil. En este sistema cada llamada de voz o cada conexin de datos, ocupa de manera exclusiva un canal mientras dure esa llamada o conexin, por tanto, un usuario puede hacer uso de varios canales y un mismo canal puede ser compartido por varios usuarios. Est basado en la conmutacin de paquetes y permite la transmisin de datos a alta velocidad para el acceso a Internet. UMTS (Universal Mobile Telecommunications System): El Sistema Universal de Telecomunicaciones Mviles, permitir disponer de banda ancha en telefona mvil y transmitir un volumen de datos importante por la red. Con esta tecnologa de tercera generacin sern posible las videoconferencias, descargar videos, el intercambio de postales electrnicas, paseos 'virtuales' por casas en venta, etc... Todo desde el mvil. WAP (Wireless Application Protocol) El Protocolo de Aplicaciones Inalmbricas (WAP) es un servicio de mensajes digital inteligente para telfonos celulares y otras terminales mviles que te permitirn visualizar contenidos de Internet en un formato de texto especial en un telfono celular con tecnologa GSM. WAP se ha convertido en el estndar global para proveer informacin a las terminales inalmbricas. WAP utiliza un microbrowser con un nuevo estndar llamado WML (similar al HTML) optimizado para terminales mviles inalmbricas. WAP esconde la complejidad del GSM en las aplicaciones, as como la Web lo ha hecho para Internet. Expande una variedad de opciones de transporte y dispositivos, incluyendo SMS, 9.6 kbit/s GSM data y GPRS. Bluetooth

Es la norma que define un estndar global de comunicacin inalmbrica a cortas distancias, que posibilita la transmisin de voz y datos entre diferentes equipos mediante un enlace por radiofrecuencia. Los principales objetivos que se pretende conseguir con esta norma son:
y y y

Facilitar las comunicaciones entre equipos mviles y fijos. Eliminar cables y conectores entre stos. Ofrecer la posibilidad de crear pequeas redes inalmbricas y facilitar la sincronizacin de datos entre nuestros equipos personales.

La tecnologa Bluetooth comprende hardware, software y requerimientos de interoperatividad. WIFI (Wireless Fidelity): Es la tecnologa utilizada en una red o conexin inalmbrica, para la comunicacin de datos entre equipos situados dentro de una misma rea (interior o exterior) de cobertura. Conceptualmente, no existe ninguna diferencia entre una red con cables (cable coaxial, fibra ptica, etc.) y una inalmbrica. La diferencia est en que las redes inalmbricas transmiten y reciben datos a travs de ondas electromagnticas, lo que supone la eliminacin del uso de cables y, por tanto, una total flexibilidad en las comunicaciones. WIMAX (Worldwide Interoperability for Microwave Access): Es el nombre con el que se conoce la norma 802.16a, un estndar inalmbrico aprobado en enero del 2003 en el WiMax Forum, formado por un grupo de 67 compaas, que ofrece un mayor ancho de banda y alcance que la familia de estndares WiFi, compuesta por el 802.11a, 802.11b y 802.11g. Como decimos, la diferencia entre estas dos tecnologas inalmbricas son su alcance y ancho de banda. Mientras que WiFi est pensado para oficinas o dar cobertura a zonas relativamente pequeas, WiMax ofrece tasas de transferencia de 70mbps a distancias de hasta 50 kilmetros de una estacin base. Por comparacin, la tasa de transferencia de WiFi es de 11mbps y la distancia de hasta 350 metros en zonas abiertas. Estndares Para que una arquitectura de componentes pueda operar es necesario disponer de un entorno normalizado que proporcione soporte a los mecanismos con que se comunican las interfaces. COM (Component Object Model).

Los lenguajes de programacin clsicos fueron diseados para desarrollar aplicaciones secuenciales compuestas de mdulos, todos ellos codificados con un solo lenguaje. Sin embargo, hay situaciones en las que no es prctico restringirse al uso de un nico lenguaje. La tecnologa COM aborda la solucin a este problema proporcionando un sencillo, pero a la vez potente modelo para construir sistemas software a partir de la interaccin de objetos (componentes). COM define un estndar binario (esto implica que es independiente del lenguaje de programacin) para objetos y la intercomunicacin entre ellos. Toda comunicacin se realiza a travs de operaciones que son proporcionadas dentro de interfaces. El diseador invoca las operaciones que necesita directamente, incluso si el objeto destinatario est localizado en otro proceso o en otra mquina. El modelo de programacin COM est basado en la distribucin de cdigo de clases en componentes binarios. Esto significa que el software (componentes) que se adhiere a COM, puede ser rehusado sin ninguna dependencia de cdigo fuente. Los desarrolladores pueden exponer sus trabajos como ficheros binarios sin dar a conocer sus algoritmos. El desarrollo basado en componentes resuelve muchos de los problemas asociados con las aplicaciones monolticas. Permite al grupo de desarrollo exponer ficheros binarios en vez de cdigo fuente. Los componentes binarios pueden ser actualizados independientemente y reemplazados, lo que se hace mucho ms fcil mantener y extender una aplicacin despus de que esta ha sido puesta en explotacin. MTS (Microsoft Transaction Server). MTS es una pieza de software que fue creada para Windows NT Server. Como su nombre implica, MTS permite a los objetos de la capa media (ms adelante se expone una arquitectura de diseo) correr sobre Windows NT Server y controlar las transacciones distribuidas, es decir, permite a los componentes ser esparcidos por la red y que se ejecuten en otras computadoras con sistema operativo Windows NT Server. MTS provee un entorno de ejecucin para objetos COM, adicionando soporte para la seguridad, soporte para administracin y configuracin. Es posible administrar varios servidores desde una simple computadora. COM+ COM+1, no es ms que la integracin de la arquitectura COM y MTS (Microsoft Transation Server). A diferencia de MTS, esta nueva capa de ejecucin no es opcional2, COM+ es parte por defecto de la instalacin del sistema operativo Windows 2000. Como COM, COM+, es basado sobre componentes binarios y programacin basada en interfaces. Los Componentes COM+ pueden ser actualizados y

extendidos una vez que estn en explotacin sin afectar a las aplicaciones clientes que los usan en la produccin. De este modo, la combinacin de la tecnologa COM+ junto con las tcnicas de programacin orientada a objeto, nos ofrece una importante simplificacin en el proceso de desarrollo de aplicaciones informticas. REFERENCIAS: http://msdn.microsoft.com/es-es/library/aa292464%28v=vs.71%29.aspx http://www.portalhacker.net/index.php?topic=75979.0 http://www.google.com.mx/url?sa=t&rct=j&q=tecnolog%C3%ADas%20de%20 una%20aplicaci%C3%B3n%20distribuida&source=web&cd=8&ved=0CFsQFj AH&url=http%3A%2F%2Fjungla.dit.upm.es%2F~jlopez%2Fpublicaciones%2F telecomid99.pdf&ei=64ZVT4DfJc3jsQKnt9jvBQ&usg=AFQjCNGDHax6a4Pgei wEnYep4DMqkMzqWA&cad=rja