Вы находитесь на странице: 1из 17

Patrón de arquitectura

Bróker
LUIS ARANGO MENESES
KERLIN YERINA SERNA SÁNCHEZ
JOSÉ BENAVIDES LÓPEZ
¿Qué es bróker?

 Es un programa intermediario que traduce los


mensajes de un sistema desde un lenguaje a
otro, a través de un medio de
telecomunicaciones.
 El componente bróker es responsable de
coordinar la comunicación; tanto de
enviar/reenviar las peticiones, así como de
transmitir los resultados y las excepciones
Elementos del Bróker
Elemento Cliente

 Son aplicaciones que acceden a los servicios de al menos, un


servidor
 Para invocar servicios remotos, los clientes envían solicitudes al
broke. Después que la operación se ha ejecutado, los clientes
reciben respuestas o excepciones del bróker
 No necesita conocer la ubicación de los servidores que acceden;
esto permite la agregación de nuevos servicios, y el movimiento de
los servidores existentes a otras ubicaciones, aun mientras el
sistemas este ejecutándose
Elemento Servidor

 Implementa objetos que exponen su funcionalidad a través de


interfaces que consisten de operaciones y atributos
 Estan disponibles a travez de un lenguaje de definición de interfaz o
un lenguaje binario
 Hay tipos de servidores
 Ofrecen servicios comunes a muchos dominios de aplicaciones
 Implementan una funcionabilidad especifica para un dominio de
aplicación particulas
Elemento Bróker

 Es un mensajero, responsable de la
transmisión de solicitudes de cliente a
servidores, asi como de las transmisión de
respuestas
 Localiza al receptor de una solicitud
basándose en un sistema de
identificadores únicos
Elementos Proxies

 Estos son responsables de recibir peticiones y desempaquetarlas con el fin de


llamar al servicio correcto, además se encargan de recibir resultados y
excepciones del servidor, empaquetarlos y enviarlos al Bróker.
 Principalmente funcionalidad es ocultar los detalles de implementación de los
mecanismos de interoperabilidad entre dos Brokers.
 Estos hacen parte de los componentes Bridges
 Este posee tipos el proxy-cliente y proxy-servidor
Elemento proxy-cliente

 Representa una capa adicional entre los


cliente y el bróker, para proveer
transparencia en el sentido que un objeto
remoto aparece como local ante el cliente,
es decir esconde los detalles de
implementación,
Elemento proxy-servidor

 Son responsables de:


 Recibir solicitudes
 Desempaquetar los mensajes de entrada
 Llamar servicio apropiado
 El marshaling de respuesta y excepciones ante de enviarlo al cliente

Marshaling: transformar la representación en memoria de un objeto a un


formato apropiado para almacenamiento o transmisión
Elemento puente

Los puentes son componentes


opcionales utilizados para
esconder los detalles de
implementación cuando 2 bróker
interoperan
Variaciones del patrón – Sistema Bróker
de comunicación directa
 En esta variante los cliente pueden comunicarse directamente con los servidores.
 El bróker indica a los clientes los canales de comunicación que provee el servidor,
entonces el cliente puede establecer un enlace directo al servidor solicitado
 En estos sistemas, los proxies se encargan de las responsabilidades del bróker para
manejar la mayoría de las actividades de comunicación
Sistema Bróker de paso de mensajes

 Esta variante es apropiada para sistemas que se enfocan en las transmisión de


datos
 Los servidores utilizan un tipo de mensajes para determinar lo que deben hacer, en
vez de ofrecer servicios que los clientes pueden invocar
 En este contexto, un mensaje es una secuencia de datos en bruto junto con
información adicional que especifica el tipo de mensaje, su estructura y otros
atributos relevantes.
Sistema Bróker Adaptadores

 Para aumentar la flexibilidad, se puede esconder la interfaz


del bróker a los servidores utilizando una capa adicional,
llamada capa adaptadora, que es responsable de registrar e
interactuar con los servidores.
Sistema Bróker Negociante

 Usualmente, un cliente envía una solicitud a un servidor identificado en forma


única, pero en algunas circunstancias los servicios y no los servidores son el
destino de las solicitudes de los cliente.
 En esta variante el bróker debe conocer que servidores pueden proveer un servicio
especificado, y envía la solicitud al servidor apropiado
 Sin embargo, a los proxies de lado del cliente usan identificadores de servicios en
vez de identificadores de servidor para accesar a la funcionabilidad de los
servidores. La misma solicitud puede enviarse a varios servidores que
implementen el mismo servicio
Diagrama de secuencia
Ventajas

 Mayor flexibilidad, mantenimiento y adaptabilidad


 Mayor escalabilidad(posibilidad de distribución)
 Servidores invisibles a los cliente(ejemplo migraciones)
 Portabilidad(API/ABI del middleware independiente del sistema operativo o red
de comunicación)
 Componente reutilizables(Interfaz publicas)
Posibles limitaciones

 El bróker se convierte en un punto critico de la arquitectura(si falla, el sistema se


viene abajo).
 Rendimiento(al ocultar detalles de implementación, algunas optimizaciones no se
pueden aprovechar).
 La realización de labores de prueba y depuración puede se mas compleja

Вам также может понравиться