Sei sulla pagina 1di 16

UNIVERSIDAD POLITCNICA SALESIANA

Carrera de Ingeniera de Sistemas


Sistemas Distribuidos

ARQUITECTURA

INTRODUCCIN
Arquitectura de software establece como son
organizados varios componentes del software y cmo
interactan entre ellos.
Los sistemas distribuidos son comnmente piezas
complejas de software cuyos componentes estn
dispersos en mquinas mltiples
Un objetivo importante de los sistemas distribuidos es
separar las aplicaciones de las plataformas
subyacentes mediante una capa de middleware.
Ing. Vanessa Jurado Vite Mag. Sistemas Distribuidos
Carrera: Ingeniera de Sistemas

Estilos Arquitectnicos
El estilo arquitectnico est formulado en trminos
de componentes, la forma en que estos componentes
estn conectados unos con otros y los datos
intercambiados entre ellos.
Los estilos ms importantes son:

Arquitecturas en capas
Arquitecturas basadas en objetos
Arquitecturas centradas en datos
Arquitecturas basadas en eventos

Ing. Vanessa Jurado Vite Mag. Sistemas Distribuidos


Carrera: Ingeniera de Sistemas

Arquitecturas en capas
Los componentes estn
organizados en forma
de capas, en la que un
componente en una
determinada capa
puede llamar a
componentes en la capa
inmediata inferior.
Ing. Vanessa Jurado Vite Mag. Sistemas Distribuidos
Carrera: Ingeniera de Sistemas

Arquitecturas basadas en objetos


Cada objeto corresponde a
lo que hemos definido
como componente, y estos
componentes estn
conectados mediante un
mecanismo RPC.
Esta arquitectura de
software se adapta al
modelo cliente-servidor
Ing. Vanessa Jurado Vite Mag. Sistemas Distribuidos
Carrera: Ingeniera de Sistemas

Arquitecturas centradas en datos

evolucionan en torno a
la idea de que los
procesos se comunican
a travs de un
repositorio o medio
comn, ya sea pasivo o
activo

Ing. Vanessa Jurado Vite Mag. Sistemas Distribuidos


Carrera: Ingeniera de Sistemas

Arquitecturas basadas en eventos


Los procesos se comunican esencialmente por
medio de la propagacin de eventos, los cuales
de manera opcional pueden llevar datos consigo
La idea bsica es que los procesos publican
eventos tras los cuales el middleware asegura
que slo esos procesos que se subscribieron a
esos eventos, los recibirn. La ventaja principal
de esta arquitectura es que los procesos estn
acoplados flojamente. En principio, no se
requiere una referencia explcita de proceso a
proceso. A esto se le conoce como
desacoplamiento en el espacio o referencialmente
desacoplados.
Ing. Vanessa Jurado Vite Mag. Sistemas Distribuidos
Carrera: Ingeniera de Sistemas

Arquitecturas de Sistemas
El determinar que componentes de software se usarn, cmo
interactuarn y cmo se distribuirn es lo que se conoce como
una instancia de arquitectura de software, tambin llamada
arquitectura de sistema.
Podemos diferencias las siguientes:
Arquitecturas Centralizadas
Arquitecturas Descentralizadas
Arquitecturas Hbridas

Ing. Vanessa Jurado Vite Mag. Sistemas Distribuidos


Carrera: Ingeniera de Sistemas

Arquitecturas Centralizadas
Aplican el modelo bsico clienteservidor, donde los procesos en un
sistema distribuido estn divididos
en dos grupos.
Un servidor es un proceso que
implemente un servicio especfico.
Un cliente es un proceso que solicita
un servicio a un servidor.
La interaccin cliente-servidor,
tambin conocida como solicitudrespuesta
Ing. Vanessa Jurado Vite Mag. Sistemas Distribuidos
Carrera: Ingeniera de Sistemas

Arquitecturas Centralizadas
Implementacin de
aplicaciones en capas
Se usa esencialmente el estilo
arquitectnico en capas:
El nivel de interfaz de usuario.
El nivel de procesamiento.
El nivel de datos.

Ing. Vanessa Jurado Vite Mag. Sistemas Distribuidos


Carrera: Ingeniera de Sistemas

Arquitecturas Centralizadas
El nivel de interfaz de usuario
contiene todo lo necesario para
establecer una interfaz directa con
el usuario
El nivel de procesamiento
tpicamente contiene las
aplicaciones.
El nivel de datos administra los datos
sobre los cuales se est trabajando.
Distribucin vertical: arquitecturas
multinivel cliente-servidor; son una
consecuencia directa del dividir las
aplicaciones en los tres niveles:
interfaz de usuario, componentes
de procesamiento y datos
Ing. Vanessa Jurado Vite Mag. Sistemas Distribuidos
Carrera: Ingeniera de Sistemas

Arquitecturas Descentralizadas
Distribucin horizontal: un
cliente o un server puede estar
fsicamente dividido en partes
lgicamente equivalentes,
pero cada parte opera con su
proprio conjunto integral de
datos, balanceando
(equilibrando) la carga del
sistema. (Sistemas peer to
peer)
Ing. Vanessa Jurado Vite Mag. Sistemas Distribuidos
Carrera: Ingeniera de Sistemas

Arquitecturas Hibridas
Combinan las caractersticas de arquitecturas clienteservidor y arquitecturas peer-to-peer.

Ing. Vanessa Jurado Vite Mag. Sistemas Distribuidos


Carrera: Ingeniera de Sistemas

Arquitectura y Middleware
El middleware forma una capa entre las plataformas de
aplicacin y distribucin. Un propsito importante es proveer
un cierto nivel de transparencia en la distribucin, ocultando en
lo posible la distribucin de datos, el procesamiento y el control
de la aplicacin.
Cuando se consideran los aspectos arquitectnicos que se han
considerado hasta el momento, uno debe preguntarse dnde
entra el middleware

Ing. Vanessa Jurado Vite Mag. Sistemas Distribuidos


Carrera: Ingeniera de Sistemas

Arquitectura y Middleware
Lo que comnmente pasa es que el middleware sigue un estilo
arquitectnico especfico.
El moldear el middleware a un estilo arquitectnico especfico tiene
la ventaja de disear aplicaciones ms simples. Sin embargo, una
desventaja es que el middleware puede volverse dejar de ser ptimo
para lo que el desarrollador tena en mente.
Aunque se supone que el middleware tiene como propsito
transparentar la distribucin, generalmente se requiere que el
middleware se adapte a las aplicaciones. Una solucin sera
desarrollar varias versiones del middleware y otra sera el crear
middleware fcilmente configurable y adaptable, segn lo requiera la
aplicacin.
Ing. Vanessa Jurado Vite Mag. Sistemas Distribuidos
Carrera: Ingeniera de Sistemas

Auto administracin en sistemas


Distribuidos
Los sistemas distribuidos y el middleware asociado a ellos requieren
proveer soluciones generales orientadas a crear un escudo contra
condiciones indeseables inherentes a la red, de tal manera que
puedan brindar soporte a tantas aplicaciones como sea posible. Los
sistemas distribuidos deben ser adaptivos, ms en cuanto a su
comportamiento de su ejecucin y no en cuanto a los componentes
de software que lo conforman.
Cuando se requiere de adaptacin automtica, existe una fuerte
interrelacin entre las arquitecturas del sistema y las arquitecturas del
software. Por otro lado, se requiere organizar los componentes de un
sistema distribuido en tal forma que se pueda implementar el
monitoreo y ajuste del sistema; tambin decidir dnde deben
ejecutarse los procesos para facilitar la adaptabilidad.
Ing. Vanessa Jurado Vite Mag. Sistemas Distribuidos
Carrera: Ingeniera de Sistemas

Potrebbero piacerti anche