Modelos Arquitectónicos.
Correspondencia con la infraestructura física distribuida I
En esta clasificación se considera cómo las entidades, objetos o servicios se asignan o forman parte de la infraestructura física distribuida subyacente. Se exploran tres aspectos [1] [2]: Elementos que conforman la arquitectura, Patrones que usa la arquitecura y Soluciones basadas en middleware
1. Elementos de la Arquitectura
Comprende los siguientes • Correspondencia de servicios con servidores. • Memoria Cache. • Código Móvil. • Agentes Móviles.
Correspondencia de servicios con servidores. Los servicios pueden implementarse como varios servidores de procesos en computadoras separadas que interactúan según sea necesario para proporcionar un servicio a procesos del cliente. En la Figura 1 se muestra un ejemplo
![]() |
| Figure 1: Arquitectura con múltiples servidores. Tomado de [1] |
Cache. Los navegadores web mantienen un caché con las páginas web visitadas recientemente y otros recursos web en el sistema de archivos local del cliente, utilizando una solicitud HTTP para verificar con el servidor original que las páginas en caché del cliente, utilizando una solicitud HTTP para verificar con el servidor original que las páginas en caché están actualizadas. Un servidor proxy web (ver Figura 2) proporciona un caché compartido de recursos web para las máquinas cliente en un sitio o en varios sitios.
![]() |
| Figure 2: Arquitectura web proxy. |
Código móvil. El applet es un ejemplo de código móvil: el usuario que ejecuta un navegador selecciona un enlace a un subprograma cuyo código se almacena en un servidor web; el código se descarga en el navegador y lo ejecuta , como se muestra en la Figura 3.
![]() |
| Figure 3: Arquitectura web applet. |
Agentes móviles El agente móvil puede realizar invocaciones a los recursos locales en cada sitio que visita, por ejemplo, acceder a entradas individuales de la base de datos. Los agentes móviles pueden usarse para instalar y mantener software en las computadoras dentro de una organización o para comparar los precios de productos de varios proveedores visitando el sitio de cada proveedor y realizando una serie de operaciones de base de datos.
2. Patrones de Arquitectura
Los patrones arquitectónicos [3] dan una descripción de los elementos y el tipo de relación que tienen junto con un conjunto de restricciones. Un patrón arquitectónico expresa un esquema de organización estructural esencial para un sistema de software, que consta de subsistemas, sus responsabilidades e interrelaciones. No son necesariamente soluciones completas en sí mismas, sino que ofrecen conocimientos parciales que, cuando se combinan con otros patrones, llevan al diseñador a una solución para un dominio de problema dado.
Capas. En un enfoque por capas, un sistema complejo se divide en varias capas, con un capa dada haciendo uso de los servicios ofrecidos por la capa siguiente. La capa referida ofrece una abstracción de software, con capas superiores que desconocen detalles de su implementación, o de cualquier otra capa debajo de ellos. En términos de sistemas distribuidos, esto equivale a una organización vertical de servicios en capas de servicio. Ejemplo de esta estructura es el middleware.
Arquitectura de capas. Las arquitecturas de capas es una técnica para organizar la funcionalidad de una capa determinada y colocarla en servidores apropiados y, como consideración secundaria, en los nodos físicos. Esta técnica se asocia más comúnmente con la organización de aplicaciones y servicios. Por ejemplo, en la figura 4 se observa una arquitectura de dos capas, cliente y servidor; mientras la Figura 5 es el esquema de una arquitectura de tres capas: cliente, servidor y servidor de base de datos.
![]() |
| Figure 5: Arquitectura de capas de tres niveles. |
Clientes flacos La tendencia en la computación distribuida es alejar la complejidad del dispositivo del usuario final hacia los servicios en Internet. Esto es más evidente en la computación en la nube, pero también se puede ver en la arquitectura de niveles. Esta tendencia ha suscitado el interés en cliente ligero, que permite el acceso a sofisticados servicios en red, proporcionados por una solución en la nube, con pocas suposiciones o demandas en el dispositivo del cliente, entre otros. La Figura 6 ilustra un cliente ligero que accede a un servidor informático a través de Internet.
![]() |
Figure 6: Arquitectura de cliente ligero. |
Patron Proxy. El patrón proxy es un patrón recurrente en sistemas distribuidos, diseñados para apoyar la transparencia de la ubicación en llamadas de procedimiento remoto (RPC) o invocación del método (RMI). Es un intermediario entre un objeto y el resto que lo invoque.
Brokerage. El uso de corredores o brokerage en servicios web puede verse como un patrón que admite la interoperabilidad en infraestructuras distribuidas potencialmente complejas. Este patrón consta del trío de proveedores de servicios, solicitante de servicios y corredor de servicios (un servicio que coincide con los servicios prestados a los solicitados), como se muestra en la Figura 7.
![]() |
| Figure 7: Patrón arquitectónico en servicios web. |
Bibliografía
[1]George Coulouris et al. Distributed Systems: Concepts and Design. 5th. USA: Addison-Wesley Publishing Company, 2011
[2]Christina J. Hogan Thomas A. Limoncelli Strata R. Chalup. The Practice ofCloud System Administration: Designing and Operating Large Distributed Systems. Volume 2. Addison Wesley, 2014.
[3]Roger S. Pressman and Bruce R. Maxim. Software Engineering: A Practitioner’s Approach. 9th edition. McGraw-Hill Education, 2019.







No hay comentarios.:
Publicar un comentario