Sei sulla pagina 1di 33

Arquitectura Cliente/Servidor

Arquitectura Cliente/Servidor
Es un modelo de aplicacin distribuida en el que
las tareas 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.
Arquitectura Cliente/Servidor
Para que la comunicacin entre dos aplicaciones se lleve
a cabo uno de los programas de aplicacin debe estar
esperando por requerimientos por parte del programa
llamador.
Este modelo, un programa espera pasivamente y el otro
inicia la comunicacin se conoce como el paradigma de
interaccin cliente servidor.
La aplicacin que espera pasivamente es llamada
SERVIDOR y la que inicia el contacto es llamada
CLIENTE.
Caractersticas de los Clientes y Servidores
Cliente:
Es una aplicacin normal que acta como cliente cuando se requiere
acceso remoto.
Es invocado directamente por el usuario y tiene una existencia dada por la
duracin de la sesin del usuario.
Corre localmente en el computador del usuario.
Inicia activamente el contacto con un servidor.
Ejemplo: navegador (Internet explorer, mozilla, etc)
Servidor:
Corre en un computador compartido.
Espera pasivamente ser contactado por clientes remotos.
Acepta ser contactado por clientes diversos clientes pero ofrece un
servicio bien definido.
Ejemplo: servidor WEB (apache)

4
Arquitectura Cliente/Servidor
un programa de computador se especializa en recoger y
presentar informacin (el cliente) y otro en hacer que esta
informacin sea fcilmente accesible (el servidor).

Sistema que se apoya en terminales (clientes) conectadas a


un computador que los provee de un recurso (servidor). De
esta manera los clientes son los elementos que necesitan
servicios del recurso y el servidor es la entidad que lo
posee.
Arquitectura Cliente/Servidor

Cundo implementar C/S ?

Cambios estructurales y organizativos.


Cambios en organigramas.
Respuesta dinmica de mercado.
Cambio en procesos de negocio.
ARQUITECTURA CLIENTE SERVIDOR

Servidor Web
Computadora dedicada a gestionar el uso de
la red por otras computadoras llamadas
clientes la cual contiene archivos y recursos
que pueden ser accedidos desde otras
computadoras o terminales.
Arquitectura Cliente/Servidor
Un servidor web es un programa que implementa el
protocolo HTTP (hypertext transfer protocol). Este
protocolo est diseado para transferir hipertextos,
pginas web o pginas HTML (hypertext markup
language): textos complejos con enlaces, figuras,
formularios, botones y objetos incrustados como
animaciones o reproductores de sonidos.
ARQUITECTURA CLIENTE SERVIDOR

Un servidor web se mantiene a la espera de


peticiones HTTP llevada a cabo por un cliente HTTP
que se conoce como navegador. El navegador
realiza una peticin al servidor y ste le responde
con el contenido que el cliente solicita.
el cliente es el encargado de interpretar el cdigo
HTML, es decir, de mostrar las fuentes, los colores y
la disposicin de los textos y objetos de la pgina;
el servidor tan slo se limita a transferir el cdigo de
la pgina sin llevar a cabo ninguna interpretacin de
la misma
ARQUITECTURA CLIENTE SERVIDOR
Sobre el servicio web clsico se pueden
disponer de aplicaciones web. stas son
fragmentos de cdigo que se ejecutan
cuando se realizan ciertas peticiones o
respuestas HTTP. Hay que distinguir entre:

Aplicaciones en el lado del cliente: el cliente


web es el encargado de ejecutarlas en la
mquina del usuario. Son las aplicaciones
tipo Java o Javascript:
ARQUITECTURA CLIENTE SERVIDOR

El servidor proporciona el cdigo de las


aplicaciones al cliente y ste, mediante el
navegador, las ejecuta.
Es necesario, por tanto, que el cliente
disponga de un navegador con capacidad
para ejecutar aplicaciones (tambin llamadas
scripts). Normalmente, los navegadores
permiten ejecutar aplicaciones escritas en
lenguaje javascript y java,
ARQUITECTURA CLIENTE SERVIDOR

Aplicaciones en el lado del servidor: el


servidor web ejecuta la aplicacin; sta, una
vez ejecutada, genera cierto cdigo HTML; el
servidor toma este cdigo recin creado y lo
enva al cliente por medio del protocolo
HTTP.
ARQUITECTURA CLIENTE SERVIDOR

Algunos conceptos o productos relacionados con las


aplicaciones web son:
PHP
ASP
Perl
CGI
.NET
JSP (Tecnologa Java )
JEE
ARQUITECTURA CLIENTE SERVIDOR

Algunos servidores web importantes son:


Apache
IIS
Otros servidores, ms simples pero ms
rpidos, son:
lighttpd
thttpd
ARQUITECTURA CLIENTE SERVIDOR
El Protocolo TCP-IP
Internet est formada por sistemas de tipos
muy diversos, unidos por enlaces de
comunicaciones variados, de los que se
desconoce su estructura y funcionamiento.
Esto plantea dos problemas fundamentales:
1. Se necesita un sistema para localizar un
computador dentro de Internet, con
independencia de su situacin fsica y los
enlaces de comunicaciones necesarios para
alcanzarlo.
ARQUITECTURA CLIENTE SERVIDOR
2. Adems, la gran variedad de computadores
existentes obliga a disponer de un lenguaje
comn de intercambio de informacin,
entendido por todos ellos, y que sea
independiente de su estructura interna o
sistema operativo.
La solucin a este problema es el protocolo
TCP/IP. Se trata de un lenguaje de
comunicacin entre computadores, que
permite la interconexin e intercambio de
informacin entre equipos muy diversos.
ARQUITECTURA CLIENTE SERVIDOR

El protocolo TCP/IP consta de tres niveles:


IP, UDP y TCP. El nivel bsico es el IP, y
permite enviar mensajes simples entre dos
sistemas. TCP y UDP utilizan los mensajes
del nivel IP para construir un dilogo ms
complejo entre los computadores.
ARQUITECTURA CLIENTE SERVIDOR

El nivel IP (Internet Protocol) es capaz de


enviar mensajes de pequeo tamao
(denominados datagramas) entre dos
computadores conectados en red.
Es un mecanismo de comunicacin entre
computadores, y no entre aplicaciones. Se
debe aadir un nivel adicional (TCP o UDP)
para conseguir que dos programas
informticos puedan intercambiar datos.
ARQUITECTURA CLIENTE SERVIDOR

Cada computador dentro de Internet tiene


asociada una direccin nica denominada
direccin IP;
Est formada por una secuencia de 4
nmeros, cada uno entre 0 y 255, separados
por puntos. Es el equivalente al nmero de
telfono, utilizando el smil de las
comunicaciones telefnicas.
ARQUITECTURA CLIENTE SERVIDOR
Los niveles TCP y UDP
TCP (Transmission Control Protocol) y UDP
(User Datagram Protocol) utilizan los
mensajes IP para lograr una transferencia de
datos libre de errores.
Ambos establecen un dilogo con otro
sistema a base de enviar sucesivos
mensajes IP.
El contenido de estos mensajes incluye
informacin de protocolo (que hace funcionar
a TCP y UDP) y datos (propios de las
aplicaciones que se comunican).
ARQUITECTURA CLIENTE SERVIDOR

UDP sirve para enviar mensajes cortos, aadiendo


un pequeo nivel de seguridad sobre la entrega
correcta de los mensajes, frente a la inseguridad del
nivel IP.
TCP es ms parecido a las comunicaciones
telefnicas. Una llamada TCP implica un proceso de
establecimiento de llamada, otro de intercambio de
datos y otro de terminacin de llamada.
Durante el tiempo que dura el intercambio de datos,
los dos computadores implicados mantienen una
relacin que garantiza el xito de la transferencia.
ARQUITECTURA CLIENTE SERVIDOR
ARQUITECTURA DE CAPAS
Capa de Presentacin
Posee componentes que tratan con interfaces e
interacciones con el usuario. La capa de
presentacin de una aplicacin en Web puede utilizar
Java Servlets, Java Server Pages o Java Applets.
Capa de Lgica de Aplicaciones
Contiene componentes que trabajan juntos para
resolver problemas de lgica y desarrollo.
Capa de Datos
Esta capa es utilizada por la capa de lgica de
Aplicaciones para almacenar su estado en forma
permanente. El centro de esta capa es una o ms
Bases de datos que sirven de almacenamiento.
ARQUITECTURA DE CAPAS
La separacin fsica de estas capas se puede
dar de la siguiente forma:
Arquitectura de dos escalas, en la cual dos de
estas son separadas fsicamente de la tercera.
Por otro lado tambin se tiene la
Arquitectura de tres Escalas, que distribuye
las tres separaciones abstractas o lgicas
mencionadas anteriormente en tres capas
fsicas distintas.
ARQUITECTURA DE CAPAS

En cada una de estas arquitecturas las capas


son separadas una de otras por alguna
frontera fsica ya sea por una mquina,
procesos, una frontera corporativa, de red,
etc.
ARQUITECTURA DE CAPAS

Arquitectura
de 2 Capas
ARQUITECTURA DE CAPAS

Arquitectura
de 2 Capas
ARQUITECTURA DE CAPAS

Arquitectura
de N- Capas
Lenguaje de Programacin Web Dinmico.

CGI (Common Gateway Interface )


Interfaz Comn de Pasarela, abreviado
CGI) es una importante tecnologa de la
World Wide Web que permite a un cliente
(explorador web) solicitar datos de un
programa ejecutado en un servidor web.
CGI especifica un estndar para transferir
datos entre el cliente y el programa. Es un
mecanismo de comunicacin entre el
servidor web y una aplicacin externa.
Lenguaje de Programacin Web Dinmico.

Las aplicaciones CGI fueron una de las primeras


maneras prcticas de crear contenido dinmico para
las pginas web.

En una aplicacin CGI, el servidor web pasa las


solicitudes del cliente a un programa externo. La
salida de dicho programa es enviada al cliente en
lugar del archivo esttico tradicional.

CGI ha hecho posible la implementacin de


funciones nuevas y variadas en las pginas web, de
tal manera que esta interfaz rpidamente se volvi
un estndar, siendo implementada en todo tipo de
servidores web.
Que es un servidor WEB?
Es la mquina o computador donde se
almacena su pgina web.
Toda la informacin publicada en cada sitio
web se almacena en un espacio destinado
para este fin.
De lo contrario no habra forma de divulgar
el contenido.
Cmo funciona un servidor Web?

Se debe utilizar un mtodo para


intercambiar la informacin o transferir los
sitios web al Computador, esto se hace a
travs del protocolo HyperText Transfer
Protocol(Protocolo de transferencia de
hipertexto) que es el que se refleja antes de
escribir cualquier direccin de Internet.
Protocolos de Internet
Principales:
TCP - IP
otros:
ARP (Address Resolution Protocol), Protocolo de Resolucin de Direcciones, para
la resolucin de direcciones,
FTP (File Transfer Protocol), Protocolo de Transferencia de Archivos,
para transferencia de archivos o ficheros,
HTTP (HyperText Transfer Protocol), Protocolo de Transferencia de HiperTexto,
que es popular porque se utiliza para acceder a las pginas web,
POP (Post Office Protocol), Protocolo de Oficina Postal, para correo electrnico,
SMTP (Simple Mail Transfer Protocol), Protocolo de Transferencia Simple de
Correo, para correo electrnico,
Telnet (Teletype Network), para acceder a equipos remotos.

Potrebbero piacerti anche