Sei sulla pagina 1di 5

CENTRO DE ESTUDIOS SUPERIORES DE LOS TUXTLAS CEST

ESPECIALIDAD:
ING. EN SISTEMAS COMPUTACIONALES

MATERIA:
SISTEMAS OPERATIVOS II

TEMA:
MIDDLEWARE ARQUITECTURA CLIENTE/SERVIDOR ARQUITECTURA CLIENTE/SERVIDOR DE DOS CAPAS ARQUITECTURA CLIENTE/SERVIDOR DE TRES CAPAS

ALUMNO:
MIGUEL CHIGUIL SINTA

CATEDRATICO:
ING. CESAR TRIANA FLORES

Pgina |1

ndice
Middleware ..........................................................................................3 Arquitectura Cliente / Servidor ............................................................3 Arquitectura Cliente / Servidor de Dos Capas .....................................4 Arquitectura Cliente / Servidor de Tres Capas .....................................5

Pgina |2

Middleware
Middleware es un software de computadora que conecta componentes de software o aplicaciones para que puedan intercambiar datos entre stas. Es utilizado a menudo para soportar aplicaciones distribuidas. Esto incluye servidores web, servidores de aplicaciones, sistemas de gestin de contenido y herramientas similares. Middleware es especialmente esencial para tecnologas como XML, SOAP, servicios web y arquitecturas orientada a servicios. Middleware es una incorporacin relativamente reciente en la computacin. Obtuvo popularidad en los 80 como una solucin al problema de cmo conectar nuevas aplicaciones con viejos sistemas. De todas maneras el trmino ha sido usado desde 1968. Tambin facilitaba el procesamiento distribuido: conexin de mltiples aplicaciones para crear una aplicacin ms grande, generalmente sobre una red.

Arquitectura cliente/Servidor
Esta arquitectura se divide en dos partes claramente diferenciadas, la primera es la parte del servidor y la segunda la de un conjunto de clientes. Normalmente el servidor es una mquina bastante potente que acta de depsito de datos y funciona como un sistema gestor de base de datos (SGBD). Por otro lado los clientes suelen ser estaciones de trabajo que solicitan varios servicios al servidor. Ambas partes deben estar conectadas entre s mediante una red. Una representacin grfica de este tipo de arquitectura sera la siguiente.

Este tipo de arquitectura es la ms utilizada en la actualidad, debido a que es la ms avanzada y la que mejor ha evolucionado en estos ltimos aos. Podemos decir que esta arquitectura necesita tres tipos de software para su correcto funcionamiento:

Pgina |3

Software de gestin de datos: Este software se encarga de la manipulacin y gestin de los datos almacenados y requeridos por las diferentes aplicaciones. Normalmente este software se aloja en el servidor. Software de desarrollo: este tipo de software se aloja en los clientes y solo en aquellos que se dedique al desarrollo de aplicaciones. Software de interaccin con los usuarios: Tambin reside en los clientes y es la aplicacin grfica de usuario para la manipulacin de datos, siempre claro a nivel usuario (consultas principalmente).

A parte de estos existen ms aplicaciones software para el correcto funcionamiento de esta arquitectura pero ya estn condicionados por el tipo de sistema operativo instalado, el tipo de red en la que se encuentra, etc.

Arquitectura cliente/Servidor de dos capas


Esta estructura se caracteriza por la conexin directa entre el proceso cliente y un administrador de bases de datos. Dependiendo de donde se localice el grupo de tareas correspondientes a la lgica de negocios se pueden tener a su vez dos tipos distintos dentro de esta misma categora: IMPLEMENTADO CON SQL REMOTO En este esquema el cliente enva mensajes con solicitudes SQL al servidor de bases de datos y el resultado de cada instruccin SQL es devuelto por la red, no importando si son uno, diez, cien o mil registros. Es el mismo cliente quien debe procesar todos los registros que le fueron devueltos por el servidor de base de datos, segn el requerimiento que l mismo hizo. Esto hace que este tipo de estructura se adecue a los requerimientos de aplicaciones orientadas a los sistemas de apoyo y gestin, pero resultan inadecuados para los sistemas crticos en que se requieran bajos tiempos de respuesta. Ventajas: Presenta una estructura de desarrollo bastante simple ya que el programador maneja un nico ambiente de desarrollo (es ms simple respecto al Cliente/Servidor en tres planos, puesto que reduce una capa de programacin, como se ver ms adelante). Inconvenientes: La gran cantidad de informacin que viaja al cliente congestiona demasiado el trfico de red, lo que se traduce en bajo rendimiento. Por su bajo rendimiento esta estructura tiene un bajo espectro de aplicacin, limitndose a la construccin de sistemas no crticos. IMPLEMENTADO CON PROCEDIMIENTOS ALMACENADOS En este esquema el cliente enva llamadas a funciones que residen en la base de datos, y es sta quien resuelve y procesa la totalidad de las instrucciones SQL agrupadas en la mencionada funcin. Ventajas: Presenta las mismas ventajas de una arquitectura dos planos con procedimientos almacenados, pero mejora considerablemente el rendimiento sobre

Pgina |4

sta, dado que reduce el trfico por la red al procesar los datos en la misma base de datos, haciendo viajar slo el resultado final de un conjunto de instrucciones SQL. Inconvenientes: Si bien la complejidad de desarrollo se ve disminuida, se pierde flexibilidad y escalabilidad en las soluciones implantadas. Obliga a basar el peso de la aplicacin en SQL extendido, propios del proveedor de la base de datos que se elija. Debiera considerarse que s bien los procedimientos almacenados (stored procedures), los desencadenantes (triggers) y las reglas (constraint) son tiles, en rigor son ajenos al estndar de SQL

Arquitectura cliente/Servidor de tres capas


Esta estructura se caracteriza por elaborar la aplicacin en base a dos capas principales de software, ms la capa correspondiente al servidor de base de datos. Al igual que en la arquitectura dos capas, y segn las decisiones de diseo que se tomen, se puede balancear la carga de trabajo entre el proceso cliente y el nuevo proceso correspondiente al servidor de aplicacin. En este esquema el cliente enva mensajes directamente al servidor de aplicacin el cual debe administrar y responder todas las solicitudes. Es el servidor, dependiendo del tipo de solicitud, quien accede y se conecta con la base de datos. Ventajas: Reduce el trfico de informacin en la red por lo que mejora el rendimiento de los sistemas (especialmente respecto a la estructura en dos planos). Brinda una mayor flexibilidad de desarrollo y de eleccin de plataformas sobre la cual montar las aplicaciones. Provee escalabilidad horizontal y vertical. Se mantiene la independencia entre el cdigo de la aplicacin (reglas y conocimiento del negocio) y los datos, mejorando la portabilidad de las aplicaciones. Los lenguajes sobre los cuales se desarrollan las aplicaciones son estndares lo que hace ms exportables las aplicaciones entre plataformas. Dado que mejora el rendimiento al optimizar el flujo de informacin entre componentes, permite construir sistemas crticos de alta fiabilidad. El mismo hecho de localizar las reglas del negocio en su propio ambiente, en vez de distribuirlos en la capa de interfaz de usuario, permite reducir el impacto de hacer mantenimiento, cambios urgentes de ltima hora o mejoras al sistema. Disminuye el nmero de usuarios (licencias) conectados a la base de datos. Inconvenientes: Dependiendo de la eleccin de los lenguajes de desarrollo, puede presentar mayor complejidad en comparacin con Cliente/Servidor dos planos. Existen pocos proveedores de herramientas integradas de desarrollo con relacin al modelo Cliente/Servidor dos planos, y normalmente son de alto costo.

Pgina |5

Potrebbero piacerti anche