You are on page 1of 5

18/9/2014 Leccin 2: Tipos de arquitecturas cliente-servidor

http://datateca.unad.edu.co/contenidos/208017/ContLin/leccin_2_tipos_de_arquitecturas_clienteservidor.html 1/5
Leccin 2: Tipos de arquitecturas cliente-servidor
Los orgenes del modelo Cliente/Servidor se basan en los sistemas de paso de mensajes (Figura 22). Los datos,
representados en forma de mensajes, se intercambian entre dos procesos, un emisor y un receptor:
Un proceso enva un mensaje que representa una peticin. El mensaje se entrega a un receptor, que
procesa la peticin y enva un mensaje como respuesta. En secuencia, la rplica puede disparar
posteriores peticiones, que llevan a nuevas respuestas, y as, sucesivamente.

Figura 22. Paso de Mensajes

Fuente: Autor
Las operaciones bsicas necesarias para dar soporte al paradigma de paso de mensajes
sonenviar y recibir. Para comunicaciones orientadas a conexin, tambin se necesitan las
operaciones conectar y desconectar

De acuerdo con la complejidad de la arquitectura utilizada, los sistemas Cliente/Servidor se clasifican en
arquitecturas monolticas, arquitecturas de dos capas y arquitecturas de tres capas.

1. Arquitecturas Cliente/Servidor Monolticas (1 capa)
La industria de la Tecnologa de la Informacin ha puesto en prctica una forma muy sencilla de computacin
Cliente/Servidor desde la aparicin inicial de los mainframe (Figura 23).
Figura 23. Arquitectura Cliente/Servidor Monoltica
18/9/2014 Leccin 2: Tipos de arquitecturas cliente-servidor
http://datateca.unad.edu.co/contenidos/208017/ContLin/leccin_2_tipos_de_arquitecturas_clienteservidor.html 2/5
Fuente: Autor
En esa configuracin un host mainframe (microcomputador) y un terminal "tonto" directamente conectado con
el mainframe puede verse como un modelo Cliente/Servidor de una capa.
2. Arquitecturas Cliente/Servidor de dos capas
El cliente se comunica directamente con un servidor de bases de datos. La aplicacin o lgica de negocio bien
reside en el cliente, o en el servidor de base de datos en la forma de procedimientos almacenados (Figura 24).
Un primer modelo Cliente/Servidor de dos capas comenz a emerger con las aplicaciones desarrolladas para
redes LAN a finales de los 80 y principios de los 90. Estas aplicaciones se basaban en tcnicas sencillas de
comparticin de archivos, implementadas mediante lenguajes del tipo xBase[1].
Figura 24. Arquitectura Cliente/Servidor de dos capas

Fuente: Autor
Posteriormente se aadi ms complejidad a la arquitectura de dos capas y es as como surgieron los conceptos
de "cliente grueso" (robusto) y "servidor grueso".
Cliente grueso
Inicialmente, en el modelo de dos capas intervienen equipos que no tienen la caracterstica de mainframe(un
servidor de archivos en red) y un cliente grueso inteligente, donde se hace la mayor parte del procesamiento
(Figura 24). Esta configuracin no es fcilmente escalable en sistemas de gran, e incluso medio, tamao (50 o
ms clientes conectados). Entonces el Interfaz Grfico de Usuario (GUI,Graphical User Interface) emerge como
el entorno dominante para las aplicaciones de escritorio y con l, emerge un nuevo enfoque en el planteamiento
inicial de la arquitectura de dos capas. El servidor de archivos en red de propsito general se reemplaza por un
servidor de bases de datos especializado.
Esto modelo origina la aparicin de nuevas herramientas de desarrollo: Powerbuilder, VisualBasic y
Delphi, por citar algunas donde la mayor parte del procesamiento tiene lugar an en los clientes "gruesos",
pero ahora la informacin se hace llegar al cliente utilizando SQL para realizar peticiones al servidor de base de
datos, que simplemente informa del resultado de las consultas.
Es importante considerar los siguientes aspectos al utilizar "clientes gruesos":
18/9/2014 Leccin 2: Tipos de arquitecturas cliente-servidor
http://datateca.unad.edu.co/contenidos/208017/ContLin/leccin_2_tipos_de_arquitecturas_clienteservidor.html 3/5
Cuanto ms complicada la aplicacin, ms "grueso" pasa a ser el cliente y ms potente debe ser
el hardware que debe soportarlo.

El coste de adecuar la tecnologa del cliente pasa a ser prohibitivo y puede frustrar la abordabilidad de las
aplicaciones.

Adems, la carga de la red utilizando este tipo de clientes es muy grande, de modo que el ancho efectivo
de la red (y por lo tanto del nmero de usuarios que pueden utilizarla) se reduce.

Servidor Grueso
Una configuracin alternativa cliente "fino" Servidor "grueso" es otra aproximacin utilizada en la arquitectura
de dos capas. En este caso el cliente invoca procedimientos almacenados en el servidor de base de datos. El
modelo del Servidor grueso tiene un mejor rendimiento "grueso" porque aunque la carga de red es todava
pesada, es ms ligera que en la aproximacin del cliente grueso.
El inconveniente de esta aproximacin es que el uso de procedimientos almacenados hace depender el
desarrollo excesivamente del software del vendedor. Otro inconveniente se deriva del hecho de que los
procedimientos estn almacenados conjuntamente con los datos y cada base de datos que contiene el
procedimiento debe modificarse cuando cambia la lgica de la aplicacin. En grandes bases de datos
distribuidas esto puede conducir a una administracin tediosa. En ambos caso, se utiliza un protocolo de
transporte de bases de datos (como SQL-net) para llevar las transacciones de un extremo a otro, que
generalmente resulta ser un proceso "pesado". No importa que modelo particular se utilice, los sistemas de dos
capas no se ajustan bien cuando se manejan aproximadamente 100 usuarios.
3. Arquitecturas Cliente/Servidor de tres capas
Una generacin ms moderna de la arquitectura Cliente/Servidor aade una capa intermedia (middle tier). En la
arquitectura de tres capas (en general, en la arquitectura multicapa) el cliente implementa la lgica de
presentacin (cliente fino), el servidor(es) de aplicacin implementan la lgica de negocio y los datos residen en
uno (o varios) servidor(es) de bases de datos (Figura 25).
Una arquitectura multicapa se define por tanto por las siguientes tres capas de componentes:
Un componente front-end que es el responsable de proporcionar la lgica de presentacin.

Un componente back-end que proporciona acceso a servicios dedicados, tales como un servidor de bases
de datos.

Un componente que hace las funciones de capa intermediaria (middl tier) que permite a los usuarios
compartir y controlar la lgica de negocio mediante su aislamiento de la aplicacin real.

Figura 25. Arquitectura Cliente/Servidor de tres capas
18/9/2014 Leccin 2: Tipos de arquitecturas cliente-servidor
http://datateca.unad.edu.co/contenidos/208017/ContLin/leccin_2_tipos_de_arquitecturas_clienteservidor.html 4/5

Fuente: Autor
Una arquitectura multicapa aumenta la arquitectura Cliente/Servidor tradicional mediante la introduccin de una o
ms componentes intermedios. El sistema cliente interacta con la capa intermedia va un protocolo estndar
como HTTP o RPC[2].
La capa intermedia interacta con el servidor de datos (back-end) mediante protocolos de bases de datos
estndar tales como SQL, ODBC y JDBC. Esta capa intermedia contiene la mayor parte de la lgica de la
aplicacin, traduciendo las llamadas del cliente en consultas (u otras acciones) a la base de datos y traduciendo
los datos provenientes de la base de datos en datos del cliente para devolvrselos.
Este emplazamiento de la lgica de negocio sobre el servidor de aplicaciones proporciona escalabilidad y
aislamiento de la lgica de negocio con el fin de manejar rpidamente los cambios necesarios de sta. Adems,
este hecho permite ampliar las opciones en lo que se refiere a la eleccin de un softwarepropietario de bases de
datos.
La arquitectura de 3 capas se puede extender a <n>capas cuando la capa intermedia soporta conexiones a
diferentes tipos de servicios (no slo servicios de almacenamiento de datos), integrndolos y acoplndolos al
cliente y entre ellos
Otras ventajas de la arquitectura Cliente/Servidor multicapa son:
Cambios en la interfaz de usuario o en la lgica de la aplicacin son muy independientes entre s,
permitiendo a la aplicacin evolucionar fcilmente para satisfacer los nuevos requisitos.

Los cuellos de botella de la red de comunicaciones se minimizan porque la capa de aplicacin no
transmite datos extras al cliente, slo lo que necesite para llevar a cabo la tarea.
18/9/2014 Leccin 2: Tipos de arquitecturas cliente-servidor
http://datateca.unad.edu.co/contenidos/208017/ContLin/leccin_2_tipos_de_arquitecturas_clienteservidor.html 5/5

Cuando se requieren cambios en la lgica de negocio, slo debe actualizarse el servidor. En la
arquitectura de dos capas, cada cliente debe ser modificado cuando cambia la lgica.

El cliente est aislado de la base de datos y las operaciones de red. El cliente puede acceder fcil y
rpidamente sin saber dnde estn los datos o cuntos servidores se estn utilizando.

Las conexiones de bases de datos se pueden agrupar y, por tanto, compartidas por varios usuarios, lo que
reduce considerablemente el coste asociado a las licencias por usuario.

La organizacin es independiente de la base de datos, porque la capa de datos se escribe utilizando SQL
estndar que es independiente de la plataforma.

La lgica de la aplicacin se puede utilizar un lenguaje estndar como Java, C o COBOL.

You might also like