Conociendo el modelo ClienteServidor Introduccin La arquitectura clienteservidor

  • Slides: 15
Download presentation
Conociendo el modelo Cliente-Servidor

Conociendo el modelo Cliente-Servidor

Introducción La arquitectura cliente-servidor es un modelo de aplicación distribuida en el que las

Introducción La arquitectura cliente-servidor es un modelo de aplicación distribuida en el que las tareas de un programa se reparten entre los proveedores de recursos o servicios, llamados servidores, y los demandantes, llamados clientes. Un cliente realiza peticiones a otro programa, el servidor, quien le da respuesta. Esta idea se puede aplicar a programas que se ejecutan sobre una sola computadora, aunque es más ventajosa distribuirlo a través de una red de computadoras.

Definición Desde un punto de vista conceptual: Es un modelo para construir sistemas de

Definición Desde un punto de vista conceptual: Es un modelo para construir sistemas de información, que se sustenta en la idea de repartir el tratamiento de la información y los datos por todo el sistema informático, permitiendo mejorar el rendimiento del sistema global de información.

Definición 3. Cliente/Servidor Es la tecnología que proporciona al usuario final el acceso transparente

Definición 3. Cliente/Servidor Es la tecnología que proporciona al usuario final el acceso transparente a las aplicaciones, datos, servicios de cómputo o cualquier otro recurso del grupo de trabajo y/o, a través de la organización, en múltiples plataformas. El modelo soporta un medio ambiente distribuido en el cual los requerimientos de servicio son hechos por estaciones de trabajo "clientes'', y los servicios resultan un trabajo realizado por otras computadoras llamadas servidores.

El Cliente Es quien inicia un requerimiento de un servicio. Es quien espera respuestas

El Cliente Es quien inicia un requerimiento de un servicio. Es quien espera respuestas del servidor. Es quien puede conectarse a varios servidores a la vez. Es quien normalmente interactúa con los usuarios finales mediante una interfaz gráfica de usuario.

El Servidor Es quien tras la recepción de una solicitud, la procesa y luego

El Servidor Es quien tras la recepción de una solicitud, la procesa y luego envía la respuesta al cliente. Por lo general, acepta las conexiones de un gran número de clientes (en ciertos casos el número máximo de peticiones puede estar limitado).

Características de la arquitectura C/S Las funciones de Cliente y Servidor pueden estar en

Características de la arquitectura C/S Las funciones de Cliente y Servidor pueden estar en plataformas separadas, o en la misma plataforma. Cada plataforma puede ser escalable independientemente. Los cambios de soft o hard realizados en las plataformas de los Clientes o de los Servidores se realizan de una manera transparente para el usuario final.

Arquitectura mono-capa Entendemos por aplicaciones mono-capa, aquellas que tanto la propia aplicación como los

Arquitectura mono-capa Entendemos por aplicaciones mono-capa, aquellas que tanto la propia aplicación como los datos que maneja se encuentran en la misma máquina y son administradas por la misma herramienta: podríamos decir que son una sola entidad

Arquitectura En una arquitectura cliente/servidor clásica tenemos dos "capas" Una donde está el cliente

Arquitectura En una arquitectura cliente/servidor clásica tenemos dos "capas" Una donde está el cliente que implementa la interface. Otra donde se encuentra el gestor de bases de datos que trata las peticiones recibidas desde el cliente. La lógica de la aplicación se encuentra por tanto repartida entre el cliente y servidor.

Arquitectura En la arquitectura cliente/servidor de tres capas añadimos una nueva capa entre el

Arquitectura En la arquitectura cliente/servidor de tres capas añadimos una nueva capa entre el cliente y el servidor donde se implementa la lógica de la aplicación. De esta forma el cliente es básicamente una interface, que no tiene por qué cambiar si cambian las especificaciones de la base de datos o de la aplicación; queda aislado completamente del acceso a los datos. En esta Arquitectura todas las peticiones de los clientes se controlan en la capa correspondiente a la lógica del negocio. Cuando el cliente necesita hacer una petición se la hace a la capa en la que se encuentra la lógica del negocio.

¿Que tipos de clientes conocemos? ¿En nuestros TPs quienes son los clientes? ¿Quien hace

¿Que tipos de clientes conocemos? ¿En nuestros TPs quienes son los clientes? ¿Quien hace de cliente en nuestras pcs para conectarnos a internet? ¿Que aplicaciones conocés para internet que sean Clientes?

¿Que tipos de servidores conocemos? ¿Si los clientes son los navegadores que tipos de

¿Que tipos de servidores conocemos? ¿Si los clientes son los navegadores que tipos de servicios hay en internet? ¿Si los servidores proveen servicios, que servidores conocés dentro de una PC? ¿En los ultimos TPs que hicimos quienes manejan los pedidos del formulario (cliente)?

Ejemplo en la WEB Cliente Maquina cliente (conectada a una red, ejemplo Internet) Programa

Ejemplo en la WEB Cliente Maquina cliente (conectada a una red, ejemplo Internet) Programa cliente (Mozilla Firefox, Internet Explorer, Chrome, etc) Servidor Maquina servidor (aloja los archivos de las páginas web) Programa servidor (Apache, IIS, etc)

Ventajas Centralización del control: los accesos, recursos y la integridad de los datos son

Ventajas Centralización del control: los accesos, recursos y la integridad de los datos son controlados por el servidor de forma que un programa cliente defectuoso o no autorizado no pueda dañar el sistema. Escalabilidad: se puede aumentar la capacidad de clientes y servidores por separado. Fácil mantenimiento. Las actualizaciones se realizan del lado del servidor y el cliente no tiene necesidad de actualizarse. Toda la información es almacenada en el lado del servidor, que suele tener mayor seguridad que los clientes. Se pueden crear distintas interfaces gráficas (clientes) para acceder al mismo servicio (Servidor)

Desventajas La congestión del tráfico ha sido siempre un problema en el paradigma C/S.

Desventajas La congestión del tráfico ha sido siempre un problema en el paradigma C/S. Cuando un servidor está caído, las peticiones de los clientes no pueden ser satisfechas. El software y el hardware de un servidor son generalmente muy determinantes. El desempeño es otro de los aspectos que se deben tener en cuenta en el esquema Cliente/Servidor. Pueden presentarse problemas por congestión en la red, dificultad de tráfico de datos, etc.