El modelo Cliente/Servidor
permite diversificar el trabajo
que realiza cada aplicación
Tanto el Cliente como el Servidor son
entidades abstractas que pueden residir en la
misma máquina o en máquinas diferentes.
El modelo Cliente/Servidor es un
modelo de aplicación distribuida
Las tareas de cómputo se reparten entre distintos
procesadores, obteniendo los usuarios finales el
resultado final de forma transparente
Componentes
Cliente
Es el proceso que permite al usuario formular los
requerimientos y pasarlos al servidor.
Se lo conoce con el
término front-end.
Funciones
Administrar la interfaz de usuario.
Procesar la lógica de la aplicación y
hacer validaciones locales.
Generar requerimientos de bases de datos.
Recibir resultados del servidor.
Servidor
Son los proveedores de recursos o servicios
que proporcionan la asistencia a otros.
Se lo conoce con el término back-end
Funciones
Procesar requerimientos
de bases de datos
Procesar la lógica de la aplicación y realizar
validaciones a nivel de bases de datos
Aceptar los requerimientos de bases
de datos que hacen los clientes
MIDDLEWARE
Es un módulo intermediario entre el
cliente y el servidor y se ejecuta en
ambas partes
Propiedades
Simplifica el proceso de
desarrollo de aplicaciones
Permite la interconectividad de los
Sistemas de Información del Organismo.
Facilita el desarrollo de sistemas complejos
Niveles
Protocolo de transporte.
como: TCP/IP, IPX
Protocolo específico del servicio.
como: HTTP, ORB
Network Operating System (NOS)
Sistemas Operativos de Red
Características
Protocolos asimétricos
Hay una relación muchos a uno
entre los clientes y un servidor
Encapsulación de servicios
Los servidores se pueden
actualizar sin afectar a los clientes
Integridad
El código y los datos de un servidor se
mantienen centralizados
Transparencia de localización
El servidor es un proceso que puede residir
en la misma máquina que el cliente u otra
máquina diferente de la red
Intercambios basados en mensajes
Los clientes y servidores son procesos que
pueden intercambiar solicitudes de servicios y
respuestas utilizando mensajes
Modularidad
Independencia de la plataforma
Código reutilizable
La implementación de un servicio
puede utilizarse en varios servidores
Escalabilidad
Separación de la funcionalidad
del cliente/servidor
Recursos compartidos
Un servidor puede proporcionar servicios
a muchos clientes al mismo tiempo
Tecnología
Servidores de ficheros
Los clientes hacen solicitudes de
ficheros al servidor
Servidores de bases de datos
Aplicaciones del cliente mandan solicitudes SQL al
servidor. El servidor devuelve el resultado de la consulta
Servidores de transacciones
El cliente invoca procedimientos remotos
o transacciones sobre la base de datos
Servidores Groupware
Intercambio de información
semiestructurada
Servidores de
aplicaciones de objetos
Servidores de aplicaciones web
Ventajas
Centralización del control
Fácil mantenimiento
Se dificulta el rastreo y/o hackeo de los usuarios
Seguridad en las transacciones
Amigabilidad de la interfaz
Facilidad de empleo
Desventajas
La congestión del tráfico
El paradigma de C/S clásico no tiene la robustez de una red P2P. 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 cliente no dispone de los recursos
que puedan existir en el servidor
En las redes C/S la única forma de obtener la información
es a través de la que proporciona el servidor el cual los
clientes no pueden compartir información entre ellos