Está en la página 1de 27

DESARROLLO DE APLICACIONES

DISTRIBUIDAS

Capítulo 02: Arquitectura Cliente / Servidor

Docente: Mg. Ing. Gilberto Carrión Barco


E-Mail: cbarco@crece.uss.du.pe, carsistemas@yahoo.com

Mg. Ing. Gilberto Carrión Barco 1


Contenidos

 Arquitectura MainFrame
 Arquitectura Desktop
 Arquitectura File Sharing
 Arquitectura Cliente/Servidor
 Resumen

Mg. Ing. Gilberto Carrión Barco 2


Arquitectura MainFrame

 Procesos centralizados
 Dependencia total del MainFrame
 Terminales brutas
 Todo el proceso se realiza de lado del MainFrame
 No soporta GUI
 No es cliente servidor

Mg. Ing. Gilberto Carrión Barco 3


Arquitectura MainFrame

Mg. Ing. Gilberto Carrión Barco 4


Arquitectura Desktop

 Una máquina, un proceso, un


usuario
 Arquitectura monolítica
 No existe posibilidad de
concurrencia
 Requiere de dispositivos externos
para compartir información.
 Dbase II

Mg. Ing. Gilberto Carrión Barco 5


Arquitectura File Sharing

 Una máquina comparte recursos (Archivos)


 Otra máquina peticiona los recursos y trabaja sobre ellos
 Terminales inteligentes
 Los procesos se realizan de lado de la máquina que peticiona el
archivo
 Soporta GUI
 No es cliente servidor
 Funciona medianamente con bajo nivel de tráfico, archivos
pequeños, pocas actualizaciones, poca concurrencia. (Máximo 12
usuarios simultáneos)

Mg. Ing. Gilberto Carrión Barco 6


Arquitectura File Sharing

Mg. Ing. Gilberto Carrión Barco 7


Arquitectura File Sharing

 Algunos gestores de bases de datos que utilizan arquitectura


File Sharing.
 Muchos de ellos híbridos entre desktop y File Sharing
• Xbase, FoxBase, Dbase, FoxPro
• Visual FoxPro
• Access
• Paradox

Mg. Ing. Gilberto Carrión Barco 8


Arquitectura Cliente / Servidor

 Es una arquitectura basada en el principio clásico de divide y


vencerás, donde el procesamiento se fracciona entre dos
entidades fundamentales denominadas cliente y servidor.

Mg. Ing. Gilberto Carrión Barco 9


Arquitectura Cliente / Servidor

Mg. Ing. Gilberto Carrión Barco 10


Arquitectura Cliente / Servidor

 Surge en la década de los 80 como respuesta a la evolución del


hardware en términos de redes, planteando un modelo versátil,
modular basado en mensajes que permite incrementar la
flexibilidad, la escalabilidad y la interoperación de los sistemas.
 El cliente se define como el PROCESO que requiere un servicio en
particular
 El servidor se define como el PROCESO que provee dicho servicio
 Debido a que clientes y servidores son conceptos a nivel software y
no hardware, una misma máquina puede actuar como cliente y
servidor al mismo tiempo.

Mg. Ing. Gilberto Carrión Barco 11


Arquitectura Cliente / Servidor

VENTAJAS
• Aprovecha mejor el ancho de banda
• Aprovecha en mayor medida el hardware
• Mayor seguridad y autonomía
• Mejor manejo de la concurrencia
• Permite que los clientes trabajen GUI mientras el servidor se centra en los
procesos centrales

Mg. Ing. Gilberto Carrión Barco 12


Arquitectura Cliente / Servidor

 Algunos ejemplos:
 Servidor Web (Apache, IIS) Cliente Web (IExplorer, Netscape
Navigator, Mozilla)

Mg. Ing. Gilberto Carrión Barco 13


Arquitectura Cliente / Servidor

 Servidor FTP (SFTP) Cliente FTP (Cute FTP, WS FTP)

Mg. Ing. Gilberto Carrión Barco 14


Arquitectura Cliente / Servidor

 Servidor IRC (IRC Server) Cliente IRC (Mirc, Pirch)

Mg. Ing. Gilberto Carrión Barco 15


Arquitectura Cliente / Servidor

 Servidor de Bases de datos (Interbase, Oracle, SyBase, MySql,


SQL Server, Postgress) Cliente de Base de Datos
(IBManager,IBConsole, Su propio aplicativo !!!)

Mg. Ing. Gilberto Carrión Barco 16


Arquitectura Cliente / Servidor

 Interacción de clientes y servidores

Mg. Ing. Gilberto Carrión Barco 17


Arquitectura Cliente / Servidor

CLIENTE SERVIDOR MULTICAPA (Glosario)


 CAPA: Conjunto de componentes de un aplicativo que se dedican a
una labor en particular
 CAPA DE PRESENTACIÓN (FrontEnd) : Todo aquello que se enfoca en
la interacción con el usuario final.
 REGLAS DEL NEGOCIO (Bussines rules) : Validaciones, restricciones,
reglamentos, protocolos y normativas relativas a un dominio en
particular.
 CAPA LÓGICA (Middle Tier, Middleware) : Todo aquello que gestiona
y hace valer las reglas del negocio
 CAPA DE ALMACENAMIENTO (BackEnd): Todos los elementos
dedicados a la persistencia del sistema

Mg. Ing. Gilberto Carrión Barco 18


Arquitectura Cliente / Servidor

Ingeniería del Software


 MVC: (Modelo vista controlador) Patrón de diseño que insta a
desacoplar los elementos de presentación de los de lógica.
Planteado inicialmente en SmallTalk.
 PATRON OBSERVER: Patrón de diseño que plantea el
desacoplamiento de presentación y lógica permitiendo
múltiples vistas para una lógica en particular junto a la
implementación de un método de notificación y actualización
de vistas múltiples.

Mg. Ing. Gilberto Carrión Barco 19


Arquitectura Cliente / Servidor – 02 capas

 La primera capa encapsula la presentación y la lógica


 La segunda gestiona el almacenamiento y puede almacenar
parte de la lógica (Procedimientos almacenados, triggers)

Mg. Ing. Gilberto Carrión Barco 20


Arquitectura Cliente / Servidor – 02 capas

 Buen manejo de concurrencia hasta con 100 usuarios


simultáneos aprox.
 Protocolos propietarios pueden causar problemas de
flexibilidad, portabilidad y escalabilidad.

Mg. Ing. Gilberto Carrión Barco 21


Arquitectura Cliente / Servidor – 03 capas

 Agrega una capa intermedia (middle tier) que permite priorización y


gestión de peticiones, gestión de balance, entre otros.
 Buen manejo de concurrencia con miles de usuarios simultáneos
 Protocolos
estandarizados
permiten gran
flexibilidad,
portabilidad y
escalabilidad.

Mg. Ing. Gilberto Carrión Barco 22


Arquitectura Cliente / Servidor – 03 capas

 Capa de presentación: También es conocida como interfaz gráfica y debe


tener la característica de ser "amigable" para el usuario.
 Capa de negocio: Lógica del negocio, porque es aquí donde se establecen
todas las reglas que deben cumplirse.
 Capa de datos: es donde
residen los datos y es la
encargada de acceder a los
mismos. Está formada por
uno o más gestores de
bases de datos.

Mg. Ing. Gilberto Carrión Barco 23


Arquitectura Cliente / Servidor – N capas

 En una aplicación distribuida en n-capas los diferentes procesos están


distribuidos en diferentes capas no sólo lógicas, sino también físicas.
 Los procesos se ejecutan en diferentes equipos, que pueden incluso residir en
plataformas o sistemas operativos completamente distintos.
 Cada equipo posee una configuración distinta y está optimizado para realizar el
papel que le
ha sido asignado dentro
de la estructura de la
aplicación, de modo que
tanto los recursos como
la eficiencia global del
sistema se optimicen.

Mg. Ing. Gilberto Carrión Barco 24


Arquitectura Cliente / Servidor – N capas

Mg. Ing. Gilberto Carrión Barco 25


Arquitectura Cliente / Servidor – N capas

 El surgimiento de la tecnología de componentes distribuidos es la clave de


las arquitecturas de n-capas.
 Estos sistemas de computación utilizan un número variable de
componentes individuales que se comunican entre ellos utilizando
estándares predefinidos y frameworks de comunicación como:
• corba: (common object request broker architecture) del object management
group (omg).
• dna: (distributed network applications) de microsoft (incluye com/dcom y com+
además de mts, msmq, etc.
• ejb: (enterprise java beans) de sun microsystems
• xml: (extensible markup language) del world wide web consortium (w3)
• .net: de microsoft que incluye nuevos lenguajes como visual basic.net, c#.

Mg. Ing. Gilberto Carrión Barco 26


Resumen

Mg. Ing. Gilberto Carrión Barco 27

También podría gustarte