RESUMEN: El patrón de arquitectura de software
Broker es aplicado a la estructuración de sistemas distribuidos, en los cuales sus componentes tienen un alto nivel de desacoplamiento e interactúan de manera remota generalmente. Esto se logra con la introducción de un componente Broker, el cual se encarga de desacoplar los clientes y servidores. En este patrón arquitectural, además de encontrar componentes como Servidores, clientes, Broker tambi n se encuentran componentes de tipo pro!y "capa entre clientes y el broker# y de tipo bridge "ocultar detalles de implementación entre dos broker#. PALABRAS CLAVE: arquitectura! desaco"lado! intero"erabilidad. com"onente!
2.3 COMPONENTES
2.3.1 SERVIDOR
3os ser$idores son com"onentes que im"lementan ob%etos que a tra$és de inter-aces e2"onen su -uncionalidad que est' com"uesta "or o"eraciones & atributos. 4n lengua%e de de-inición de inter-az .5631 o un est'ndar binario (ace que las inter-aces estén dis"onibles. #2isten dos ti"os de /er$idores: 3os ser$idores que o-recen ser$icios comunes a muc(os dominios de a"licación 3os ser$idores que im"lementan una -uncionalidad es"ecí-ica "ara un dominio de a"licación es"ecí-ico.
1 INTRODUCCIÓN
#ste documento da a conocer las características "rinci"ales del "atrón arquitectónico bróker! dando a conocer sus "rinci"ales características! com"onentes! $enta%as! des$enta%as & usos conocidos.
2.3.2 CLIENTE
3os clientes son a"licaciones que acceden a los ser$icios de uno o m's ser$idores. Para (acer uso de estos ser$icios! los clientes en$ían solicitudes al Broker. 3uego de que la o"eración se (a e%ecutado! el bróker se encarga de en$iar a los clientes una res"uesta .72ito o #2ce"ción1. 3a interacción entre ser$idores & clientes se (ace de manera din'mica! es decir los ser$idores "ueden actuar como clientes en cualquier momento. Para acceder a los distintos ser$icios! los clientes no necesitan conocer la ubicación de los ser$idores a los que acceden! esta característica "ermite que se "uedan agregar nue$os ser$icios! adem's de que los ser$icios e2istentes "uedan ser reubicados mientras el sistema esté en -uncionamiento.
2 PATRON BROKER
2.1 CARACTERÍSTICAS GENERALES
#l "atrón Broker es un "atrón arquitectónico a"licado a sistemas distribuidos! en los cuales los com"onentes est'n altamente desaco"lados & "or lo general es necesaria una interacción remota entre los com"onentes que com"onen el sistema. #l entorno en el que se a"lica este "atrón es un sistema distribuido! (eterogéneo! con com"onentes inde"endientes que interact)an entre sí. *+,
2.3.3 BROKER
#l bróker es un com"onente que cum"le el "a"el de mensa%ero dentro del sistema! es res"onsable de la transmisión de solicitudes en$iadas "or clientes a los ser$idores! también son res"onsables de la transmisión de res"uestas de los ser$idores a los clientes .Res"uestas de é2ito o e2ce"ciones1. #l bróker localiza al rece"tor de una solicitud en base a un sistema de identi-icadores )nicos. #l bróker o-rece AP58s+ a clientes & ser$idores que inclu&en o"eraciones "ara el registro de ser$idores & el llamado de métodos de ser$idores. 0uando una solicitud dirigida a un ser$idor llega a un bróker! este "asa la solicitud directamente al ser$idor! si el ser$idor se encuentra inacti$o! el bróker se encarga de acti$arlo. #l bróker en$ía todas las res"uestas
1
2.2 ESTRUCTURA
Para lograr el desaco"lamiento entre com"onentes & la comunicación remota entre estos! se introduce un com"onente conocido como Broker! la -unción "rinci"al de este com"onente es lograr el desaco"lamiento de los ser$idores & de los clientes. Adem's de los com"onentes &a mencionados en este "atrón .Brokers! /er$idores & 0lientes1! est' constituido también "or com"onentes de ti"o Bridge & de ti"o Pro2&.
API: Interfaz de programación de aplicaciones, es el conjunto de funciones y procedimientos que ofreces cierta biblioteca para ser utilizado por otro software como una capa de abstracción.
1
J. A. Quintero - Patrón de arquitectura - Broker
.
.#2ce"ciones & res"uestas de é2ito1! las cuales son "roducto de la e%ecución de un ser$icio al cliente que (izo la solicitud. #n tal caso de que el ser$idor es"eci-icado sea mantenido "or otro bróker! el bróker actual encuentra una ruta al bróker remoto & en$ía la solicitud a este. *9, #-iciencia restringida .debido a que la distribución de com"onentes es din'mica1 Ba%a tolerancia a -allos .6e"endencia de los com"onentes de ti"o broker1 0om"le%idad a la (ora de (acer "ruebas & debbuging.
2.3.4 BRIDGES
3os bridges son com"onentes de uso o"cional! estos son utilizados "ara ocultar los detalles de im"lementación cuando dos brokers interact)an entre sí. Por e%em"lo si dos brokers di-erentes se comunican entre sí a tra$és de la red! deben "oder (acerlo sin im"ortar el sistema o"erati$o o la con-iguración de la red en la que estos se encuentran.
3 CONCLUSIONES
A "esar de que el "atrón arquitectural Broker est' "ensado "ara desaco"lar la interacción entre com"onentes de un sistema .0lientes & ser$idores1! la -uncionalidad del sistema queda atada a los com"onentes Broker! lo cual es una des$enta%a! a no ser de que $arios Broker "ermitan la solicitud de "eticiones a un mismo ser$idor! lo cual también sería otra des$enta%a en cuestiones de gasto de recursos com"utacionales.
2.3.5 PROXIES DEL LADO DEL CLIENTE
3os "ro2ies del lado del cliente son com"onentes adicionales que re"resentan una ca"a m's entre los clientes & el broker! con el -in de "ro$eer trans"arencia! en el sentido de que un ob%eto remoto a"arece como ob%eto local ante el cliente! es decir! se encargan de esconder detalles de im"lementación como : 3a creación & eliminación de bloques de memoria! #l ti"o de mecanismo de comunicación entre "rocesos utilizado "ara trans-erir un mensa%e entre clientes & brokers! el mars(aling9 de "ar'metros & resultados. *:,
2.3. PROXIES DEL LADO DEL SERVIDOR
3os "ro2ies del lado del ser$idor son similares a los "ro2ies del lado del cliente! la di-erencia es que estos son res"onsables de recibir solicitudes! desem"aquetar los mensa%es que llegan! el unmars(aling de los "ar'metros! llamar al ser$icio a"ro"iado! & el mars(aling de resultados .#2ce"ciones & resultado e2itoso1 antes de que estos sean en$iados al cliente.
2.4 VENTA!AS
#2tensibilidad de com"onentes ;acilidad de cambio de com"onentes <rans"arencia en ubicación de com"onentes Portabilidad 5ntero"erabilidad con otros sistemas de ti"o Broker Reusabilidad
2.5 DESVENTA!AS
!ars"aling: Proceso de transformación de la representación en memoria de un objeto a un formato de datos adecuado para el almacenamiento o la transmisión, se utiliza generalmente cuando los datos deben ser mo#idos entre diferentes partes de un software o de un software a otro.