[go: up one dir, main page]

0% encontró este documento útil (0 votos)
199 vistas22 páginas

Cliente Servidor

Este documento describe el modelo cliente/servidor y sus conceptos fundamentales. Explica que el modelo divide las aplicaciones entre tareas de cliente y servidor para maximizar la eficiencia y permitir actualizaciones más sencillas. También describe las ventajas de este modelo como la escalabilidad, el uso de hardware heterogéneo, y la robustez del sistema. Finalmente, discute conceptos como el middleware, las arquitecturas de dos, tres y varios niveles, y cómo se pueden clasificar los servidores y distribuir las aplicaciones en este modelo.

Cargado por

Ricardo Salazar
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
199 vistas22 páginas

Cliente Servidor

Este documento describe el modelo cliente/servidor y sus conceptos fundamentales. Explica que el modelo divide las aplicaciones entre tareas de cliente y servidor para maximizar la eficiencia y permitir actualizaciones más sencillas. También describe las ventajas de este modelo como la escalabilidad, el uso de hardware heterogéneo, y la robustez del sistema. Finalmente, discute conceptos como el middleware, las arquitecturas de dos, tres y varios niveles, y cómo se pueden clasificar los servidores y distribuir las aplicaciones en este modelo.

Cargado por

Ricardo Salazar
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 22

Sistemas de Informacin Introduccin a los Sistemas de Informacin: El Modelo Cliente/Servidor

Agradecimientos: por su contribucin a la realizacin de estas transparencias: Jesus Villamor Lugo y Simon Pickin (IT-UC3M), Juan Jos Gil Ros (Terra.)
1

ndice
Definicin Concepto Clasificacin
Servicio Cmo se distribuye la aplicacin entre C y S

Arquitecturas multinivel

Definicin
La arquitectura C/S es una forma de dividir y especializar programas y equipos de cmputo de forma que la tarea que cada uno de ellos realiza se efecta con la mayor eficiencia posible y permita simplificar las actualizaciones y mantenimiento del sistema

Cambio de paradigma
1 Revolucin: Cliente servidor
Del Mainframe a los sistemas C/S Detonante: desarrollo HW, LAN Resultado Mainframe - > C/S

2 Revolucin: Objetos distribuidos:


Fragmentacin del cliente y servidor en componentes Detonante: desarrollo HW, WAN, Internet Resultado C/S -> Sistemas 3 niveles o multinivel

Consecuencias para desarrolladores de los SI


Incertidumbre De sistemas propietarios a sistemas a la carta Necesidad de conocer gran nmero de tecnologas
4

El Sistema de Informacin moderno


y el modelo Cliente/Servidor
El Sistema de Informacin moderno
Administra y despliega grandes redes Ofrece estndares de interoperabilidad Distribuye sus funcionalidades Saca partido del modelo Cliente/Servidor Muchas veces requiere habilidades hbridas
Procesamiento de transacciones, bases de datos, comunicaciones o conocimientos sobre GUI.

El Modelo Cliente/Servidor
El concepto
Sistema distribuido donde el software est dividido entre
tareas servidor tareas cliente

Separacin clara de responsabilidades


en base a la nocin de servicio

Papel del cliente:


inicia el dilogo enva peticiones al servidor conforme a algn protocolo asimtrico pide que el servidor acte, o que le informe, o ambas cosas

Papel del servidor:


espera pasivamente peticiones de los clientes responde a las peticiones segn su poltica
6

El Modelo Cliente/Servidor
Consecuencias
Un servidor puede atender a muchos clientes Puede haber uno o varios servidores en un sistema Un servidor puede ser substituido por otro que ofrece (al menos) el mismo servicio sin afectar a los clientes Se puede ocultar a los clientes la ubicacin del servidor
la ubicacin no afecta la manera de utilizar los servicios

El servidor puede regular el acceso a recursos compartidos


e.g. servidor X, servidor de impresin,...

En el caso general, un objeto/componente/programa puede ser cliente, servidor o ambos

El Modelo Cliente/Servidor
Ventajas
Base en la nocin de servicio buena estructura
acoplamiento cliente-servidor dbil, comunicacin por mensajes interfaces claras, modularidad, flexibilidad

Escalabilidad vertical
facilita: migrar a servidor ms grande / veloz o servidores mltiples

Escalabilidad horizontal
facilita: aadir clientes

Hardware y plataformas software (SO) heterogneos


despliegue independiente de cliente y servidor clientes / servidores pueden usar el hardware y SO ms adecuados para su funcin, ej. cliente barato, servidor rpido

Robustez
servidor protegido contra fallos en el cliente
8

El Modelo Cliente Servidor


Dos puntos de vista
Cliente y servidor como entidades fsicas
Un servidor no es cliente; un cliente no es servidor Granularidad al nivel de subsistema (gruesa) Contexto: arquitecturas de aplicaciones comerciales

Cliente y servidor como roles


La misma entidad puede actuar como cliente o servidor Granularidad al nivel de objeto o componente (fina) Contexto: tecnologas de objetos distribuidos
9

El Modelo Cliente Servidor (Entidades)


Clasificacin 1: En funcin del servicio
Servidores de archivos
Msg.: Peticiones de archivos NFS, SAMBA,...

Servidores de objetos
Msg.: Invocacin a procedimientos remotos servidores CORBA, OLE/DCOM,...

Servidores de bases de datos


Msg.: Peticiones SQL Oracle, Sybase, SQL Server,

Servidores Web
Msg.: Peticiones HTTP servidores HTTP,...

Servidores de transacciones
Msg.: Transaccin (Conjunto de peticiones SQL) OLP,...

Servidores de groupware
Msg.: Mensajes de groupware, e-mails Lotus Notes, Exchange, etc.

10

El Modelo Cliente Servidor (Entidades)


Clasificacin 2: Cmo distribuir aplicacin?
Cliente pesado / servidor ligero
Mayor parte de la aplicacin corre en el lado cliente Servidor exporta datos en bruto Clientes saben de organizacin de datos en el servidor

Cliente ligero / servidor pesado


Mayor parte de la aplicacin corre en el lado servidor Servidor exporta mtodos que operan sobre los datos Cliente no es mucho ms que el GUI
11

El Modelo Cliente Servidor (Entidades)


Clasificacin 2: Cmo distribuir aplicacin?
Cliente ligero (servidor pesado) Servidor Web Servidor de transacciones Servidor de Groupware Servidor obj distribuidos

Cliente pesado Servidor de archivos Servidor de BD Servidor de obj. distribuidos

GUI

Aplicacin

Datos

CLIENTE

SERVIDOR
12

El Modelo Cliente Servidor (Entidades)


Arquitecturas de distintos niveles
Aplicaciones comerciales se dividen en tres partes
acceso a datos lgica de la aplicacin (o lgica del negocio) presentacin (interfaz de usuario)

Acceso a datos
gestin y acceso a datos persistentes

Presentacin
presentacin de resultados al usuario de forma comprensible

Lgica del negocio


el procesamiento
13

El Modelo Cliente Servidor (Entidades)


Dos niveles, tres niveles o multi-nivel?
En todas las arquitecturas cliente-servidor
nivel del cliente (client tier): presentacin nivel de datos (data tier): acceso a datos

Arquitectura de dos niveles (2-tier) : C-S clsico


lgica de la aplicacin integrada
o bien con la presentacin o bien con el acceso a datos o bien con ambos

Arquitectura de tres niveles (3-tier)


lgica de la aplicacin localizada en el nivel del medio, separada
tanto del acceso a datos como de la presentacin

Arquitectura multi-nivel (multi-tier)


nivel del medio se divide en distintos niveles
14

El Modelo Cliente Servidor (Entidades) Estrategias de distribucin C/S

15

El Modelo Cliente Servidor (Entidades)


Ventajas del cliente ligero
Menos infraestructura en el lado cliente
reduce costes puesto que hay muchos clientes, pocos servidores

Administracin ms facil
es decir, configuracin, mantenimiento, despliegue, puesto que hay menos servidores que clientes

Menos trfico en la red


debido a un nivel de servicio ms abstracto ofrecido al cliente

Gestion de recursos centralizado


ayuda a asegurar la integridad de los datos mayor nivel de seguridad mejor deteccin de fallos

Ms evolutivo, p.e. frente a un cambio del SGBD

16

El Modelo Cliente Servidor (Entidades)


Ventajas de las arquitecturas multi-nivel
Todas las ventajas del cliente ligero Ms flexibilidad y escalabilidad Niveles pueden actualizarse / remplazarse independientemente
Con cambios de requisitos Con cambios de tecnologa

Un control ms fino de la carga del servidor permite


evitar sobrecarga del servidor equilibrar la carga entre servidores conseguir tiempo de respuesta ms bajo
pero al aumento del nmero de niveles puede aumentar el nmero de comunicaciones y por tanto el tiempo de respuesta, ojo!

Ms facilidad para depurar errores


debido a una mayor modularidad
17

El Modelo Cliente Servidor (Entidades)


Diseo de un servidor
Con estado o sin estado
con estado: ms flexible, e.g. carro de compra sin estado: ms tolerancia a fallos (pero cookies)

Concurrencia?
multi-hilos: hilos de servicio viven en el mismo espacio de direcciones que el hilo de escucha atencin a la sincronizacin de hilos

Granjas de servidores / rplica de servidores


transparente para el cliente, cmo? coherencia de servidores sincronizacin de hilos distintas aplicaciones, distintos requisitos de sincronizacin
18

El Modelo Cliente Servidor


Qu es el middleware?
Contexto del modelo cliente-servidor como entidades
la tecnologa que conecta entre s los niveles de una arquitectura multi-nivel

Contexto del modelo cliente-servidor como roles


el software distribuido necesario para el soporte de interacciones entre clientes y servidores a travs de una plataforma heterognea.

Empieza en el API de la parte del cliente y comprende


la transmisin de la solicitud a travs de una red la transmisin de la respuesta resultante del servidor
19

El Modelo Cliente Servidor


Qu es el middleware?
Middleware general:
pilas de comunicacin directorios distribuidos servicios de autenticacin llamadas a procedimiento remoto (RPC) ...

Middleware de servicios especficos


para bases de datos: ODBC, JDBC,... para groupware: Lotus Notes,... para objetos: CORBA 2, DCOM... para componentes: CORBA 3, .NET... para web: HTTP, SSL, SOAP ...

20

El Modelo Cliente Servidor (Roles)


re wa dle

Mi

e ar ew dl

Mi

Negocio familiar

Pequeas empresas Departamentos

Mi

re wa dle

Mi

re wa dle

S S
21

Grandes empresas

El Modelo Cliente Servidor (Roles)

Mi

e ar ew dl

S
Mi d re wa dle

Mi

e ar ew dl

id

re wa dle

Idealizacin del Mundo C/S

Mi

re wa dle

S
22

También podría gustarte