0% encontró este documento útil (0 votos)
76 vistas

Middleware - Marshalling - Unmarshalling

Este documento describe los conceptos de middleware, marshalling y unmarshalling. Explica que el middleware es una capa de software que permite la comunicación entre aplicaciones distribuidas al ocultar la distribución y heterogeneidad. También describe los tipos de middleware como el de base de datos, servidores de aplicaciones y mensajería. Define el marshalling como el proceso de convertir datos a un formato externo para su transmisión, y el unmarshalling como la reconstrucción de los datos en el receptor.

Cargado por

Santiago Alulema
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
76 vistas

Middleware - Marshalling - Unmarshalling

Este documento describe los conceptos de middleware, marshalling y unmarshalling. Explica que el middleware es una capa de software que permite la comunicación entre aplicaciones distribuidas al ocultar la distribución y heterogeneidad. También describe los tipos de middleware como el de base de datos, servidores de aplicaciones y mensajería. Define el marshalling como el proceso de convertir datos a un formato externo para su transmisión, y el unmarshalling como la reconstrucción de los datos en el receptor.

Cargado por

Santiago Alulema
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 20

UNIVERSIDAD CATOLICA DE CUENCA

Middleware -

Marshalling -

Unmarshalling
Fernando Cajas,
Alex Morocho,
Esteban Palomeque,
David Guartatanga.
Middleware
Es la capa de software que se ubica entre el sistema operativo y las aplicaciones de
los usuarios. En un Sistema Distribuido, el middleware (lógica de la mediación) es
un software de conectividad que permite ofrecer un conjunto de servicios que
hacen posible el funcionamiento de aplicaciones distribuidas sobre plataformas
heterogéneas.
Funciones
Ocultar la distribución: middleware maneja el hecho de que una
aplicación esté compuesta de muchas partes interconectadas
ejecutándose en ubicaciones distribuidas.
Ocultar la heterogeneidad: middleware oculta o hace transparente al
usuario diversas plataformas de sistemas operativos, protocolos de
comunicación y dispositivos hardware.
Proveer interfaces uniformes y estándares de alto nivel: tanto a los
desarrolladores como a los integradores de aplicaciones, de tal manera
que las aplicaciones sean fácilmente desarrolladas, reusadas,
transportadas y puedan interoperar correctamente.
Suministrar un conjunto de servicios comunes: para realizar varias
actividades de propósito general con el fín de evitar duplicar esfuerzos y
facilitar la colaboración entre aplicaciones.
Tipos de Middleware
El middleware de base de datos
Los desarrolladores lo utilizan principalmente como un mecanismo para solicitar
información de una base de datos alojada de forma local o remota. (sql)
El middleware de servidor de aplicaciones
Es un framework que proporciona la funcionalidad para crear aplicaciones y servidor en el
cual ejecutarlas. (JBoss)
El middleware orientado a mensajes (MOM)
Los middleware orientados a mensajes están diseñados para el intercambio de mensajes
entre procesos de forma asíncrona. De esta forma, las aplicaciones únicamente se encargan
de “colocar” y “sacar” mensajes de las colas, no se conectan directamente entre ellas.
(sistemas de correo electrónico)

Tipos de Middleware
Middleware de procesamiento de transacciones (TP)
Este es un tipo de middleware cuya función es reforzar la función de las transacciones electrónicas.(Cajeros
automáticos)
Interfaz de progrmación de aplicaciones (API)
Una API es un conjunto de protocolos, herramientas y definiciones para crear aplicaciones, que permiten que
una aplicación o servicio secundario se comunique con una aplicación o servicio primario, sin tener que saber cómo
se implementa la aplicación o servicio primario.
Middleware de llamada a procedimiento remoto (RPC)
Esta es una interacción cliente-servidor que hace posible que la funcionalidad de una aplicación se distribuya en
múltiples plataformas.(java RMI)
Middleware de integración
Ofrece servicios que se utilizan para conectar las aplicaciones compradas y personalizadas, así como los recursos
de software como servicio (SaaS)
Vision

Logica
Marshalling
Es el proceso de transferir y formatear una colección de

estructuras de datos en un tipo de representación de datos

externo apropiado para la transmisión en un mensaje.


Representacion de datos

externos
Las estructuras de datos se utilizan para representar la información contenida en
las aplicaciones en ejecución. La información consiste en una secuencia de bytes
en mensajes que se mueven entre componentes en un sistema distribuido. Por
lo tanto, se requiere la conversión de la estructura de datos a una secuencia de
bytes antes de la transmisión de datos. A la llegada del mensaje, los datos
también deberían poder volver a convertirse a su estructura de datos original.
En las computadoras se manejan diferentes tipos de datos, y estos tipos no
son los mismos en todas las posiciones donde se deben transmitir los datos.
Los elementos de datos primitivos individuales pueden tener una variedad de
valores de datos, y no todas las computadoras almacenan valores primitivos
como números enteros en el mismo orden. Las diferentes arquitecturas
también representan números de punto flotante de manera diferente. Los
números enteros se ordenan de dos maneras, orden big-endian, en el que el
byte más significativo (MSB) se coloca primero, y orden little-endian, en el que
el byte más significativo (MSB) se coloca en último lugar o el byte menos
significativo
Arquitectura de agente de

solicitud de objetos comunes


Permite que sistemas con diversas arquitecturas, sistemas operativos,
lenguajes de programación y hardware informático trabajen juntos. Permite
que las aplicaciones de software y sus objetos se comuniquen entre sí. Es un
estándar para crear y usar objetos distribuidos.
Marshalling con Google Protobuffer
Los búferes de protocolo proporcionan un mecanismo extensible,
independiente del idioma y de la plataforma, para serializar datos estructurados
de manera compatible con versiones anteriores y posteriores. Es como JSON,
excepto que es más pequeño y más rápido, y genera enlaces de idioma nativo.
Los búferes de protocolo proporcionan un formato de serialización para
paquetes de datos estructurados y tipificados que tienen un tamaño de hasta
unos pocos megabytes. El formato es adecuado tanto para el tráfico de red
efímero como para el almacenamiento de datos a largo plazo.

Los búferes de protocolo son ideales para cualquier situación en la que necesite
serializar datos estructurados, similares a registros y escritos de una manera
extensible, independiente del idioma y de la plataforma.
Representación de datos en

CORBA

La representación de datos comunes (CDR) se utiliza para describir tipos de


datos primitivos o estructurados que se proporcionan como argumentos o
resultados durante invocaciones remotas en objetos distribuidos de CORBA.
Permite que los lenguajes informáticos integrados de clientes y servidores se
comuniquen entre sí. Por ejemplo, convierte little-endian en big-endian.
La invocación de métodos

remotos de Java (RMI)


Lenguaje de marcado

extensible (XML)
Los clientes se comunican con los servicios web mediante XML, que también se
utiliza para definir las interfaces y otros aspectos de los servicios web. Sin
embargo, XML se utiliza en una variedad de aplicaciones diferentes, incluidos los
sistemas de archivo y recuperación; mientras que un archivo XML es más
grande que un archivo binario, tiene la ventaja de ser legible en cualquier
máquina. Otras aplicaciones XML incluyen el diseño de interfaces de usuario y la
codificación de archivos de configuración del sistema operativo.
Los clientes, por ejemplo, suelen interactuar con los servidores web a
través de mensajes SOAP. SOAP es un estándar XML con etiquetas que
pueden utilizar los servicios web y sus clientes. Debido a que se espera
que el cliente y el servidor que comparten un mensaje tengan
conocimiento previo del orden y los tipos de información que contiene,
algunas representaciones de datos externos
Uso
Marshalling se utiliza para crear varios protocolos de llamadas a
procedimientos remotos (RPC), donde los procesos y subprocesos
separados a menudo tienen distintos formatos de datos, lo que requiere la
necesidad de ordenar entre ellos.
Para transmitir datos a través de los límites de los objetos COM, los
punteros de la interfaz del Modelo de objetos componentes (COM) de
Microsoft emplean clasificación. Cuando un tipo basado en tiempo de
ejecución de lenguaje común tiene que conectarse con otros tipos no
administrados a través de la ordenación, sucede lo mismo en el marco
.NET. DCOM significa Modelo de objetos de componentes distribuidos.

Unmarshalling
Dentro del proceso de marshalling tenemos el subproceso del
unmarshalling. Éste trata de la parte del receptor que reconstruye
el elemento a través de la información recibida en un formato
estándar. Este proceso puede ser algo más complicado que el de
marshalling, ya que no es una traducción directa. Esto es debido a
que no sólo enviamos un dato sino metadatos.

GRACIAS

También podría gustarte