Este documento describe tres tipos de arquitectura de sistemas de información: 1) la arquitectura cliente-servidor, donde las aplicaciones se dividen en procesos independientes de cliente y servidor; 2) la arquitectura web, donde el servidor web transfiere páginas HTML al cliente a través del protocolo HTTP; y 3) la arquitectura orientada a servicios, donde las aplicaciones se basan en servicios con interfaces estandarizadas.
3. 1. Arquitectura cliente-servidor
cliente al proceso que
inicia el diálogo o
solicita los recursos
Arquitectura cliente-servidor
servidor al proceso
que responde a las
solicitudes.
4. Modelo para el desarrollo de sistemas de información en el
que las transacciones se dividen en procesos
independientes que cooperan entre sí para intercambiar
información, servicios o recursos.
Arquitectura cliente-servidor
Servidor contiene la parte que debe ser compartida por
varios usuarios
Cliente permanece sólo lo particular de cada usuario
1. Arquitectura cliente-servidor
5. Clientes
1. Arquitectura cliente-servidor
Características:
No necesita conocer la lógica del servidor, sólo su
interfaz externa.
No depende de la ubicación física del servidor, ni
del tipo de equipo físico en el que se encuentra,
ni de su sistema operativo.
7. Características:
Presenta a todos sus clientes una interfaz
única y bien definida.
Los cambios implican pocos o ningún
cambio en el cliente.
1. Arquitectura cliente-servidor
Servidores
8. Funciones:
Acceso a ficheros compartidos.
Consultas y accesos a base de datos.
Procesos y lógica de negocio.
1. Arquitectura cliente-servidor
Servidores
10. Dos tipos de clientes:
Cliente ligero (Thin client)
Cliente pesado (Tick client)
1. Arquitectura cliente-servidor
11. Distintos tipos de servidores:
Servidores de archivos
Servidores de bases de datos
Servidores de aplicaciones
Servidores Web
Servidores de correo
…
1. Arquitectura cliente-servidor
12. 2. Servidor Web
Servidor Web
Un programa que implementa el protocolo HTTP (Hyper
Text Transfer Protocol).
Hay que tener claro:
HTML es un formato de archivo
HTTP es un protocolo
HTTP está diseñado para transferir lo que llamamos
hipertextos, páginas web o páginas HTML (Hyper Text
Markup Language).
13. Usado en cada transacción de la Web (WWW).
2. Servidor Web
Una vez establecida la conexión, el cliente (por ejemplo el
navegador web) envía tramas de datos que consisten en unas
cabeceras especiales y una petición, que es recibida al otro
lado de la conexión por el servidor HTTP
HTTP (Hyper Text Transfer Protocol)
14. El navegador realiza una petición al servidor y éste le
responde con el contenido que el cliente solicita.
El cliente es el encargado de interpretar el código HTML
El servidor se limita a transferir el código de la página sin
llevar a cabo ninguna interpretación de la misma.
2. Servidor Web
HTTP (Hyper Text Transfer Protocol)
15. Dirección IP
Número que identifica a una interfaz de un dispositivo
(habitualmente una computadora) dentro de una red que
utilice el protocolo IP (Internet Protocol).
Se representa mediante un número binario de 32 bits (IPv4).
Las direcciones IP se pueden expresar como números de
notación decimal.
Ejemplo de representación de dirección IPv4:
164.12.123.65
2. Servidor Web
16. URL (Uniform Resource Locator)
Secuencia de caracteres, de acuerdo a un formato
estándar, que se usa para nombrar recursos (documentos,
imágenes, etc.) por su localización.
Dirección en Internet de un recurso.
El formato general de un URL es:
protocolo://máquina/directorio/fichero
protocolo://usuario:contraseña@máquina:puerto/directorio/fichero
2. Servidor Web
17. 3. Arquitectura Orientada a Servicios
Arquitectura Orientada a Servicios (SOA)
Define la utilización de servicios para dar
soporte a los requerimientos de software
del usuario.
18. SOA e IDE
La IDE se basa en servicios con interfaces estandarizadas
(como SOA)
OGC está adaptando especificaciones como WMS, WFS y
WCS al contexto SOA
3. Arquitectura Orientada a Servicios
19.
20. ¡Muchas gracias por la atención!
Dra. María Ester Gonzalez
geoester@gmail.com
Notas del editor
Un ejemplo de cliente pesado sería una aplicación Swing (Java).
Cliente ligero: es una computadora (cliente) en una arquitectura de red cliente-servidor que tiene muy poca o ninguna lógica del programa, por lo tanto depende principalmente del servidor central para las tareas de procesamiento.
Cliente pesado (Tick client) es un cliente que realiza el grueso de las operaciones de procesamiento de datos. Los datos en sí mismos son almacenados en el servidor.
Cliente pesado
Protocolo sin estado, es decir, que no guarda ninguna información sobre conexiones anteriores. El desarrollo de aplicaciones web necesita frecuentemente mantener estado. Para esto se usan las cookies
Hay tres clases de direcciones IP que una organización puede recibir de parte de Internet Assigned Numbers Authority (IANA): clase A, clase B y clase C. En la actualidad, IANA reserva las direcciones de clase A para los gobiernos de todo el mundo y las direcciones de clase B para las medianas empresas. Se otorgan direcciones de clase C para todos los demás solicitantes. Cada clase de red permite una cantidad fija de equipos (hosts).
localizador uniforme de recurso Combina el nombre de la computadora que proporciona la información, el directorio donde se encuentra, el nombre del fichero y el protocolo a usar para recuperar los datos.
Los servicios son unidades básicas de computación que permiten crear servicios más complejos y que pueden reutilizarse para el desarrollo de aplicaciones distribuidas basadas en servicios.
Los nodos de la red hacen disponibles sus recursos a otros participantes en la red como servicios independientes a los que tienen acceso de un modo estandarizado.