cliente-servidor

28
SISTEMAS DE INFORMACIÓN Arquitectura Cliente Servidor http://www.renacersantaclara.org/ academico

Upload: freddy-flores

Post on 02-Jul-2015

255 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: cliente-servidor

SISTEMAS DE INFORMACIÓN

Arquitectura Cliente Servidor

http://www.renacersantaclara.org/academicohttp://www.renacersantaclara.org/academico

Page 2: cliente-servidor

ARQUITECTURA MAINFRAME

Procesos centralizados Dependencia total del MainFrame Clientes Livianos delgados terminales brutas

tontas Todo el proceso se realiza de lado del

MainFrame No soporta GUI No es cliente servidor

Page 3: cliente-servidor

ARQUITECTURA MAINFRAME

Terminales brutas,no poseen CPU

MAINFRAME100% Procesamiento

Page 4: cliente-servidor

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

Page 5: cliente-servidor

ARQUITECTURA DESKTOP

Estructura Monolítica

Page 6: cliente-servidor

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)

Page 7: cliente-servidor

ARQUITECTURA FILE-SHARING

Terminales inteligentes,poseen CPU

100% Procesamiento

REPOSITORIO DE ARCHIVOS

Page 8: cliente-servidor

ARQUITECTURA FILE-SHARING

Algunos gestores de bases de datos que utilizan arquitectura File Sharing. Muchos de ellos híbridos entre desktop y FS

Xbase, FoxBase, Dbase, FoxProVisual FoxProAccessParadox

Page 9: cliente-servidor

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.

CLIENTEX% Proceso

SERVIDORY% Proceso

X + Y = 100%Generalmente Y>X

Page 10: cliente-servidor

ARQUITECTURA CLIENTE SERVIDOR

Clientes inteligentesX% Procesamiento

Servidor(es)Y% Procesamiento

X + Y = 100%

Page 11: cliente-servidor

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 ínter-operación de los sistemas.

Page 12: cliente-servidor

ARQUITECTURA CLIENTE SERVIDOR

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.

Page 13: cliente-servidor

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

Page 14: cliente-servidor

ARQUITECTURA CLIENTE SERVIDOR

Algunos ejemplos: Servidor Web (Apache, IIS) Cliente Web (IExplorer,

Netscape Navigator, Mozilla)

Cliente WEBServidor WEB

Protocolo

Page 15: cliente-servidor

ARQUITECTURA CLIENTE SERVIDOR

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

Cliente FTPServidor FTP

Protocolo

Page 16: cliente-servidor

ARQUITECTURA CLIENTE SERVIDOR

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

Cliente IRCServidor IRC

Protocolo

Page 17: cliente-servidor

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 !!!)

Cliente InterbaseServidor InterBase

Protocolo

Page 18: cliente-servidor

ARQUITECTURA CLIENTE SERVIDOR

Interacción de clientes y servidores

Servidor DB (InterBase)

Servidor WEB (Apache)

Servidor de Aplicaciones (PHP)

Clie

nte

s W

EB

Servidor de DB(MySQL)

Cliente Interbase (IBmanager)

Cliente Win32 (SkyCell)

Page 19: cliente-servidor

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

Page 20: cliente-servidor

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.

Page 21: cliente-servidor

ARQUITECTURA CLIENTE SERVIDOR

CLIENTE SERVIDOR DE 2 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)

Presentación

Lógica

Almacenamiento

Lógica

Page 22: cliente-servidor

ARQUITECTURA CLIENTE SERVIDOR

CLIENTE SERVIDOR DE 2 CAPAS Buen manejo de concurrencia hasta con 100 usuarios

simultáneos aprox. Protocolos propietarios pueden causar problemas de flexibilidad,

portabilidad y escalabilidad.

Presentación

Lógica

Almacenamiento

Lógica

Page 23: cliente-servidor

ARQUITECTURA CLIENTE SERVIDOR

CLIENTE SERVIDOR DE 3 CAPAS (Multicapa) 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.

PresentaciónAlmacenamiento

LógicaLógica

Page 24: cliente-servidor

ARQUITECTURA CLIENTE SERVIDOR

Page 25: cliente-servidor

ARQUITECTURA CLIENTE SERVIDOR

CLIENTE SERVIDOR DE 3 CAPAS (Multicapa) Ejemplo: Google

Millones de clientes (5’000.000 por día, 57 por segundo aprox.)

Servidor de indexación

Servidor de documentos

Servidor de balance

Page 26: cliente-servidor

Bibliografía

Meyer Bertran, Construcción de software orientado a objetos Booch Grady, Análisis y diseño orientado a objetos Aguilar Luis J, Programación Orientada a Objetos Gates Bill Camino al futuro Cantú Marco, Mastering Delphi 7 Cantú Marco,Essential Delphi Cantú Marco,Essential Pascal Ray Lischner, Delphi In A Nutshell Delphi Magazine Ayres, Bowden, Diehl, Dorcas, The Tomes of Delphi Reisdorph Kent, Teach Yourself Borland Delphi 4 in 21 Days

Page 27: cliente-servidor

Bibliografía

http://www.nationmaster.com http://www.ddj.com/ http://www.sdmagazine.com/ http://www.byte.com/ http://www.borland.com http://www.acm.com http://www.wikipedia.org http://www.byte.com/ http://www.marcocantu.com http://www.mers.com http://liinwww.ira.uka.de/bibliography/ http://www.webopedia.com http://www-db.stanford.edu/~backrub/google.html http://www.malditainternet.com/node/60 http://www.akamarketing.com/google-dance-guide.html

Page 28: cliente-servidor

Anexos

La interfaz gráfica de usuario, conocida también como GUI (del inglés graphical user interface) es un programa informático que actúa de interfaz de usuario, utilizando un conjunto de imágenes y objetos gráficos para representar la información y acciones disponibles en la interfaz. Su principal uso, consiste en proporcionar un entorno visual sencillo para permitir la comunicación con el sistema operativo de una máquina o computador.

Habitualmente las acciones se realizan mediante manipulación directa, para facilitar la interacción del usuario con la computadora. Surge como evolución de los intérpretes de comandos que se usaban para operar los primeros sistemas operativos y es pieza fundamental en un entorno gráfico. Como ejemplos de interfaz gráfica de usuario, cabe citar los entornos de escritorio Windows, el X-Window de GNU/Linux o el de Mac OS X, Aqua.

En el contexto del proceso de interacción persona-ordenador, la interfaz gráfica de usuario es el artefacto tecnológico de un sistema interactivo que posibilita, a través del uso y la representación del lenguaje visual, una interacción amigable con un sistema informático.