Más contenido relacionado Similar a Arquitectura de redes (20) Arquitectura de redes1. Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
1
Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
Pedro Pablo Alarcón Cavero y Agustín Yagüe Panadero
1
Índice
¬ Tipos de arquitecturas
- Conceptos Básicos
® Modelo Cliente/Servidor de 2 capas
¯ Modelo Cliente/Servidor de 3 capas
° Análisis del modelo de servicio
Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
Pedro Pablo Alarcón Cavero y Agustín Yagüe Panadero
2
1. Tipos de Arquitecturas
n Arquitectura centralizada
n Arquitectura de servidor de
archivos
n Arquitectura Cliente/Servidor
2. Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
2
Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
Pedro Pablo Alarcón Cavero y Agustín Yagüe Panadero
3
Arquitectura centralizada
n Se basa en la existencia de una máquina
servidora que almacena los datos y las
aplicaciones que los procesan
n Los clientes se comportan como
terminales y sólo sirven para introducir
datos desde teclado.
Ventajas
• Gran nivel de seguridad
• Fácil de administrar
Inconvenientes
• Alto coste
• Máquina servidora muy
cargada
Mainframe o
Minicomputador
Arquitectura centralizada
Discos
Cinta magnética
3. Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
3
Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
Pedro Pablo Alarcón Cavero y Agustín Yagüe Panadero
5
Arquitectura Servidor de Archivos
n Se basa en la existencia de una o varias
máquinas servidoras que almacenan datos y
estaciones de trabajo que ejecutan aplicaciones
que los procesan.
n Los clientes en este tipo de arquitecturas son
activos.
Ventajas
• Bajo coste
• Escalable
Inconvenientes
• Clientes potentes
• Fuerte dependencia de
las comunicaciones.
Servidor de
Ficheros
Disco
Fichero A
Fichero B
. . .
Arquitectura Servidor de Archivos
Fichero A
SELECT*
FROMCLIENTES
WHERE CIUDAD=‘MADRID’
Fichero A
4. Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
4
Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
Pedro Pablo Alarcón Cavero y Agustín Yagüe Panadero
7
Arquitectura Cliente/Servidor
n Se basa en la existencia de dos tipos de
aplicaciones ejecutándose de forma
independiente.
n Una de las aplicaciones actúa como
servidora y la otra como cliente.
Ventajas
• Fácil de escalar
• Reparto de cargas
Inconvenientes
• Nuevas aplicaciones
• Importancia de las
comunicaciones
Servidor
(SGBD)
Disco
Base de
Datos
Arquitectura Cliente/Servidor
SELECT*
FROMCLIENTES
WHERE CIUDAD=‘MADRID’
5. Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
5
Servidor
(SGBD)
Disco
Arquitectura Cliente/Servidor
SELECT*
FROMCLIENTES
SELECT*
FROMCLIENTES
WHERE CIUDAD=‘MADRID’
SELECT*
FROMCLIENTES
WHERE CIUDAD=‘MADRID’
AND EDAD < 18
100.000 filas
10.000 filas
10 filas
Cliente
Base de
Datos
•Menor Tráfico en la Red
•Menor complejidad en los
programas cliente
•Menor ocupación de memoria
Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
Pedro Pablo Alarcón Cavero y Agustín Yagüe Panadero
10
Comparativa
Servidor de Archivos y Cliente/Servidor
n El cliente pide los
datos
n Se envía una copia de
los datos de la base de
datos
n Se ejecuta la consulta
n El cliente pide los
datos.
n Se envían en forma de
consulta al servidor
n El servidor procesa la
consulta y devuelve los
datos al cliente.
n Sólo viajan los datos
pedidos.
6. Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
6
Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
Pedro Pablo Alarcón Cavero y Agustín Yagüe Panadero
11
2. Conceptos básicos
n Definición
u Un sistema Cliente/Servidor es aquel en el que
dos o más procesos funcionan de forma
independiente pero de forma cooperativa.
u En un sistema Cliente/Servidor una aplicación
pide datos a otra, una vez realizada la petición
elabora la respuesta y la devuelve a la aplicación
demandante.
Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
Pedro Pablo Alarcón Cavero y Agustín Yagüe Panadero
12
Conceptos básicos
n Componentes:
u Servicios de usuario
u Servicios de negocio
u Servicios de datos
n Se basa en la existencia de componentes software
distribuidos de forma que la lógica del programa
pueda ser localizada en servidores centralizados
n Para que sea implantable hace falta la existencia de
una estructura de objetos que representen los
distintos componentes de una aplicación
7. Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
7
Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
Pedro Pablo Alarcón Cavero y Agustín Yagüe Panadero
13
3. Modelo Cliente/Servidor de dos capas
n Paralelismo con la implementación física
Ordenador Servidor Ordenador Cliente
Respuesta
Petición
Petición
Respuesta
Red
Aplicación
Servidora
Aplicación
Cliente
Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
Pedro Pablo Alarcón Cavero y Agustín Yagüe Panadero
14
n El sistema se separa en dos partes fijas: el cliente y el
servidor.
n La lógica de las aplicaciones debe estar en el cliente o en
el servidor.
n La comunicación con el servidor es transparente para el
usuario.
3. Modelo Cliente/Servidor de dos capas
n Limitaciones:
FNo es escalable
FNo es manejable
FBajo rendimiento
8. Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
8
Técnicas Avanzadas para el Desarrollo de Aplicaciones © 2002
Pedro Pablo Alarcón Cavero y Agustín Yagüe Panadero
15
n Componentes agrupadas por capas
4. Modelo Cliente/Servidor de tres capas
Servicios
de Usuario
Servicios
del negocio
Servicios
de datos
Interface Interface