Cliente Servidor
Define dos tipos de entidades diferenciadas (asimétricas) que se responsabilizan de acciones diferentes: clientes y servidores
Especifica 2 tipos de procesos con roles diferenciados
• Define un modelo de interacción basado en el concepto de servicio implementado sobre un diálogo petición-respuesta
Cliente inicia el diálogo mediante el envío de peticiones
Servidor presta elservicio y responde las peticiones recibidas
• Especifica el modo en que se sincronizan los procesos
Cliente (parte activa)
Demanda servicios a los servidores
Se asume que cada petición debería obtener respuesta
Diseñado para soportar la interacción con el usuario final
Servidor (parte pasiva)
Espera las peticiones de los clientes
Procesa esas peticiones y envía una respuesta
Diseñoorientado a maximizar la eficiencia
Posibilidad de aplicar el patrón cliente-servidor en múltiples niveles de abstracción dentro de un mismo sistema distribuidos
(a) Características de los clientes
Componente del sistema que interactúa con el usuario
No comparte sus recursos con otros clientes (en general)
No tiene restricciones especiales respecto a rendimiento, fiabilidad y escalabilidadNo requiere equipos de altas prestaciones
Fallo en un cliente no afecta al resto del sistema
Debe dar soporte a restricciones relativas a ergonomía (facilidad de uso) y seguridad (evitar comprometer los demás componentes)
(b) Características de los servidores
Componente del sistema que presta servicios al cliente
Gestiona y comparte sus recursos con los clientes que sirve
Suele tenerrestricciones especiales respecto a rendimiento, fiabilidad, escalabilidad y seguridad
• Capacidad suficiente para atender múltiple clientes
• Fallos en el servidor son críticos e invalidan el sistema
• El número de clientes (peticiones) puede ser muy variable y aumentar si se requiere
• evitar comprometer la seguridad de los recursos o datos gestionados y de los clientes
Características delmiddleware.
Componente del sistema que da unidad y abstrae las peculiaridades de las plataformas (hardware y S.O.) de clientes y servidor.
Gestiona los aspectos de bajo nivel para ofrecer un interfaz común y coherente para el desarrollo de clientes y servidores.
Misiones principales
• Soporte al envío/recepción de mensajes
• Adaptación del formato de la información intercambiada(marshaling/aplanamiento)
• Localización y acceso transparente a recursos/servicios: nombrado, direccionamiento
• Soporte al paradigma de abstracción: stubs/skeletons en RPC, RMI, CORBA.
• Otros servicios: seguridad, replicación, control concurrencia.
Combina e integra
• Servicios de bajo nivel (S.O.): seguridad, autorización/permisos, Ficheros distribuidos.
• Servicios de red: librerías,pila de transporte TCP/IP.
• Servicios específico (abstracción)s: acceso a datos, portmapper ORB.
Aproximaciones (de menor a mayor nivel de abstracción)
• Middleware de paso de mensajes: interfaz de sockets (esquema petición-respuesta)
• Middleware de invocación de métodos remota: RPC (llamadas a funciones)
• Middleware de objetos distribuidos: RMI, CORBA (interacción entre objetos)Esquema abstracto de aplicaciones distribuidas genéricas (capas) corresponde con las funciones típicas en un sistema
Capa de presentación (interfaz de usuario)
• Interacciona con el usuario, presenta los datos y recibe las entadas
Capa de aplicación/negocio (lógica de aplicación)
• Responsable de las tareas propias de la aplicación concreta
• Aplica las reglas de negocio sobre los datos y lasentradas de usuario
Capa de datos (almacenamiento y acceso a datos)
• Responsable de la gestión y almacenamiento permanente de los datos
Cada tipo de sistema cliente-servidor distribuye esas capas de modo distinto entre los componentes cliente y servidor
Clasificación dependiendo de las responsabilidades asignadas al cliente
Cliente ligero (thin client)
• No implementa ningún...
Regístrate para leer el documento completo.