Sei sulla pagina 1di 12

Middleware

Introduccin al Middleware
Aplicacin

Aplicacin

API de alto nivel

Middleware
API de bajo nivel

Sistema
Operativo

Sistema
Operativo

Comunicacin

Funciones del Middleware


Busca facilitar el desarrollo de aplicaciones
distribuidas

Esconde detalle de bajo nivel con abstracciones


Facilita la evolucin del software
Incrementa reusabilidad
Facilita la portabilidad a nuevas plataformas
Permite la interoperabilidad entre apliaciones
heterogeneas

Funciones del Middleware


Ofrecer una API (Application Programming
Interface) de alto nivel a las apliaciones
Esconder la heterogenidad de hardware y
sistemas operativos
Hacer invisible (transparente) lo
distribuido
Ofrecer servicios distribuidos de propsito
general

Categoras de Middleware
RPC (Remote Procedure Call)
Objetos distribudos
CORBA, DCOM, RMI, .NET

Componentes distribudos
Java Beans, EJB

Middleware Orientado a Mensajes (MOM)


Publish-Subscribe, colas de eventos

Tuplas distrbudas
Linda, Jini (JavaSpaces)

Acceso a informacin y persistencia

Requerimientos del Middleware


Comunicacin en la red
Coordinacin de procesos concurrentes
Confiabilidad (mecanismos de deteccin y
correccin de errores)
Escalabilidad
Heterogeneidad

Remote Procedure Call


Permite el desarrollo de aplicaciones
cliente-servidor
proceso p

proceso p
P(x,y,)

P(x,y,)

P(x,y,)

Implementacin de RPC
P(x,y,)
P(x,y,)

nivel de aplicacin

Stub
del cliente

empaqueta parmetros
enva parmetros
espera
recibe resultados
desempaqueta resultados

enva
recibe

software de comunicacin
(sockets)

nivel de middleware

recibe parmetros
desempaqueta parm.
call procedure
empaqueta resultados
enva resultados

RED

recibe
enva

software de comunicacin
(sockets)

Stub
del servidor

Aspectos de implementacin
Como sabe el cliente la direccin del
servidor?
Como se transmiten parmetros y resultados?
valor o referencia?
codificacin

Como se manejan los errores?


Como se crean los stubs?

Designacin y asignacin
Designacin (asociacin nombres-objetos)
Objetos a designar: procedimientos, servidor
Propiedades deseables: asignacin independiente de la
localizacin, flexibilidad al cambio de localizacin

Asignacin (uso de nombres para accesar objetos)


Esttica (early): se conoce la localizacin del servidor
durante la compilacin
Dinmica (late): hasta la ejecucin se conoce

Designacin y asignacin (2)


Asignacin esttica: direccines definidas en el cdigo
Asignacin dinmica: obtiene direccin en servidor de
nombres
aplicacin
cliente
stub del
cliente

comunicacin

comunicacin lgica

lookup

register

servidor de
nombres

comunicacin fsica

servidor

stub del
servidor

comunicacin

reas de investigacin en Middleware


Middleware flexible
ligado dinmico. Ej. JINI. Reflexin. Meta object
protocols)

Escalabilidad.
De redes locales corporativas a internet

Middleware de tiempo real


Middleware para computo mvil/ubicuo
Desconexiones frecuentes, distintos niveles de QoS,
movilidad de cdigo

Potrebbero piacerti anche