La arquitectura cliente-servidor tradicional de dos niveles presentaba problemas de estabilidad a medida que las aplicaciones se hacían más complejas. En 1995 surgió un modelo de tres niveles que coloca la lógica empresarial y el procesamiento de datos en un servidor intermedio, separando esta capa de la interfaz de usuario en el cliente y la base de datos en un servidor independiente. Esta arquitectura de tres niveles proporciona clientes más ligeros, mantenimiento centralizado, mayor modularidad y un mejor equilibrio de carga.
1. ARQUITECTURA CLIENTE-SERVIDOR EN TRES NIVELES
La necesidad de mejorar la estabilidad de los sistemas empresariales hizo que se pusiera en cuestión
este modelo tradicional cliente-servidor en dos niveles. A mediados de la década de los 90, a medida
que las aplicaciones fueron creciendo en complejidad y debían poder implantarse en centenares o
miles de clientes, el lado del cliente comenzó a mostrar síntomas de dos problemas que impedían
conseguir una estabilidad adecuada:
*Se utilizaban clientes “complejos”, lo que requería unos recursos considerables en la computadora
del cliente para que este pudiera ejecutarse de forma adecuada. Estos recursos incluían espacio de
disco memoria RAM y potencia de procesamiento de la CPU.
*Las tareas de administración en el lado del cliente eran bastantes significativas.
En 1995 apareció una nueva variación del modelo tradicional cliente-servidor en dos niveles, para
intentar resolver los problemas de estabilidad en las empresas.
Esta nueva arquitectura propone 3 niveles, cada uno de los cuales puede ejecutarse en distintas
plataformas.
* El nivel del interfaz del usuario, que se ejecuta en la computadora del usuario final (cliente).
* El nivel de lógica del negocio y procesamiento de datos, se ejecuta en un servidor denominado
servidor de aplicaciones.
* Un SGBD, que almacena los datos requeridos por el nivel intermedio, puede ejecutarse en un
servidor independiente denominado servidor de Base de Datos.
Como ilustra la fig. 2.15, el cliente solo es ahora responsable de la interfaz de usuario de la aplicación
y quizás de realizar algún tipo de procesamiento lógico simple, como por ejemplo la validación de los
datos de entrada, por lo que con esta arquitectura se dispone de lo que se denomina clientes
“simples”. La lógica de negocio principal de la aplicación reside ahora en su propio nivel, que se
conecta físicamente al cliente y el servidor de base a través de una red de área local (LAN) o de una
red de área extensa (WAN).
El diseño es de tres niveles tiene muchas ventajas con respecto a los diseños tradicionales de dos
niveles o de un nivel. Entre esas ventajas podemos citar:
*El hardware necesario es menos costoso, ya que los clientes son “simples”.
*El mantenimiento de las aplicaciones esta centralizado, esto elimina los problemas de distribución
del software que tantos quebraderos proporcionan en el modelo tradicional.
*Al ser mayor la modularidad, resulta más sencillo modificar o sustituir uno de los niveles sin que los
otros se vean afectados.
*Resulta más fácil equilibrar la carga de procesamiento, al separar la lógica principal de negocio de
las funciones de base de datos.
*Se adapta de forma bastante natural a los entornos web.
2. MONITORES DE PROCESAMIENTO DE TRANSACCIÓN (TP, Transaction Processing)
Es un programa que controla la transacción de datos entre clientes y servidores para proporcionar un
entorno coherente particularmente para el procesamiento de transacciones en línea (OLTP, Online
Transaction Processing). Los monitores TP proporcionan algunas ventajas:
* Encaminamiento de transacciones el monitor TP puede incrementar la estabilidad dirigiendo las
transacciones a sistemas SGBD específicos.
* Gestión de transacciones distribuidas el monitor TP puede gestionar transacciones que requieran
acceder a todos almacenados en múltiples y posiblemente heterogéneos SGBD.
* Equilibrado de carga el monitor TP puede equilibrar las solicitudes de los clientes distribuyéndolas
entre múltiples SGBD situados en una o mas computadoras.
* Multiplexación en entornos con un gran número de usuarios, puede resultar difícil en ocasiones
que todos los usuarios mantengan activa una sesión simultáneamente con el SGBD.
3. * Mejora de la fiabilidad el monitor TP actúa como gestor de transacciones llevando a cabo las
acciones necesarias para mantener la coherencia de la base de datos.