Você está na página 1de 55

ARQUITECTURA

DE APLICACIONES
WEB

APLICACIONES WEB
Aplicaciones que los usuarios pueden utilizar accediendo a un
servidor web a travs de Internet o de una intranet mediante un
navegador.
Es una aplicacin software que se codifica en un lenguaje
soportado por los navegadores web en la que se confa la
ejecucin al navegador

Existen aplicaciones como los webmails, wikis, weblogs, tiendas


en lnea son ejemplos bien conocidos de aplicaciones web.

Una pgina Web puede contener elementos que permiten una


comunicacin activa entre el usuario y la informacin.
Por ejemplo rellenar y enviar formularios, participar en juegos
diversos y acceder a gestores de base de datos de todo tipo.

Una aplicacin Web es una extensin dinmica de la web o una


aplicacin de servidor.
Existen 2 tipos de aplicaciones Web

Orientada a la presentacin

Orientada al servicio

Orientada a la presentacin

Genera paginas web interactivas que contienen varios tipos de


lenguaje de marca (HTML, XML, etc.) y contenido dinmico en
respuesta a peticiones.

Orientada al servicio

Estas paginas implementan el punto final del servicio web.

Las aplicaciones orientadas a la presentacin frecuentemente


son clientes de las aplicaciones web orientadas al servicio.

La iteracin entre un cliente Web y una aplicacin Web.


1. cliente enva una peticin HTTP al servidor web
2. Las tecnologas Java server convierten la
objeto HTTPServetRequest

peticin un

3. Esta peticin es deliberada a un componente Web, el


cual puede interactuar con JavaBeans y otros para
generar un contenido dinmico
4. El componente web puede generar un objeto
HTTPServletResponse
5. El servidor web convierte este objeto en una
HTTP y es enviada a su cliente.

respuesta

Una Arquitectura define: un conjunto de elementos, conectores,


restricciones y un sistema de control que caracterizan a un
sistema o a una familia de sistemas.

ARQUITECTURA DE DOS CAPAS


La WWW est basado en el modelo Cliente / Servidor.

El Cliente principal en el WWW son los browsers o


navegadores que solicitan informacin al Servidor.

El Servidor son los Servidores Web que proporcionan


documentos y contenidos multimedia a los clientes a
travs de la red

Esta arquitectura consiste bsicamente en un cliente que realiza


peticiones a otro programa (el servidor) que le da respuesta.

La separacin entre cliente y servidor es una separacin de tipo


lgico, donde el servidor no se ejecuta necesariamente sobre una
sola mquina ni es necesariamente un slo programa.

Los tipos especficos de servidores incluyen los servidores web,


los servidores de archivo, los servidores del correo, etc. Mientras
que sus propsitos varan de unos servicios a otros, la
arquitectura bsica seguir siendo la misma

La red cliente-servidor es aquella red de comunicaciones en la


que todos los clientes estn conectados a un servidor, en el que
se centralizan los diversos recursos y aplicaciones con que se
cuenta; y que los pone a disposicin de los clientes cada vez que
estos son solicitados.
Esto significa que todas las gestiones que se realizan se
concentran en el servidor, de manera que en l se disponen los
requerimientos provenientes de los clientes que tienen prioridad,
los archivos que son de uso pblico y los que son de uso
restringido, los archivos que son de slo lectura y los que, por el
contrario, pueden ser modificados, etc. Este tipo de red puede
utilizarse conjuntamente en caso de que se este utilizando en una
red mixta

En la arquitectura C/S el remitente de una solicitud es conocido como cliente. Sus


caractersticas son:
- Es quien inicia solicitudes o peticiones, tienen por tanto un papel activo en la
comunicacin
- Espera y recibe las respuestas del servidor.
- Por lo general, puede conectarse a varios servidores a la vez.
- Normalmente interacta directamente con los usuarios finales mediante una
interfaz grfica de usuario.
- Al contratar un servicio de redes , se tiene que tener en la velocidad de conexin
que le otorga al cliente y el tipo de cable que utiliza , por ejemplo : cable de cobre
ronda entre 1 ms y 50 ms.
Al receptor de la solicitud enviada por el cliente se conoce como servidor. Sus
caractersticas son:
-Al iniciarse esperan a que lleguen las solicitudes de los clientes, desempean
entonces un papel pasivo en la comunicacin
-Tras la recepcin de una solicitud, la procesan y luego envan la respuesta al cliente.
- Por lo general, aceptan conexiones desde un gran nmero de clientes (en ciertos
casos el nmero mximo de peticiones puede estar limitado).
- No es frecuente que interacten directamente con los usuarios finales

Ventajas

Centralizacion del control

Escalabilidad

Facil mantenimiento

Desventajas:

Congestin del trafico

El cliente no dispone de los recursos que pueden existir en el


servidor

Ejemplos

wikipedia

Juegos on line

ARQUITECTURA DE 3 CAPAS

Arquitectura en 3 capas

Capa de datos

Capa de negocios

Capa de presentacin

La WEB

Al conectarnos a internet estamos navegando en 3 capas.

Al abrir un formulario web de inscripcin (capa de presentacin)

Despus de enviar la informacin esta es verificada (capa de


negocios).

Finalmente la informacin es grabada en una base de datos (capa de


datos).

Ejemplo
Capa de datos

Capa de Negocio

Capa de Presentacin

Capa de datos

Base de datos

Tablas

Procedimientos almacenados

Componentes de datos

Capa de datos Microsoft

ADO .NET

SQL SERVER 20000

Procedimientos almacenados

Componentes (c#, vb, c++, j#)

XML

Capa de Negocio

Reglas del negocios

Validaciones

Clculos

Flujos y procesos

Capa de Negocios Microsoft

Lenguajes de Componentes (c#, vb, c++, j#)

Componentes Locales

Componentes Web (Servicios web)

Comunicacin entre componentes utilizando el SOAP y XML

Web Services

Permiten publicar componentes de negocios(Web Services) en un


servidor web.

Estas componentes pueden ser llamadas desde otros servidores


o clientes utilizando SOAP.

Simple Object Access Protocol (SOAP) es un protocolo para el


intercambio de la informacin basado en HTTP y XML

Capa de Presentacin

Formularios

Informes

Respuestas al usuario

Capa de Presentacin Microsoft

ASP .NET

ASP

XML, XSL

HTML

JAVASCRIPT , VBSCRIPT

Vb Form

Word, Excel

Extensible Markup Language


(XML)

Meta Lenguaje de Marcacin es un lenguaje estandar similar al


html, que permite la comunicacin entre los sistemas de
informacin.

Tiene una estructura de rbol.

Se recomienda usarlo en la comunicacin entre las componentes


de Presentacin con las de Negocios

Ejemplo

DB

COMPONENTES
DATOS
C# o VB .NET

HTML
FORMULARIO
JAVASCRIPT

XML
INFORMACIN

COMPONENTES
NEGOCIO
C# o VB .NET
WEB SERVICE

PRESENTACION
ASPX

XSL
HOJA DE ESTILO

XML
INFORMACIN
PROCESADA

Qu es un servidor Web?
Un servidor web es un software que permite administrar y
publicar sitios web.
Hay una gran variedad de este tipo de software en el mercado.
Los costos dependen de la plataforma que se utilice.

Servidores ms utilizados
Apache Web server.
Internet Information Server(IIS)
Personal Web Server(PWS)
Web Site.
Netscape Enterprise Server.

Conceptos de un Servidor Web


Sitio WEB.
Directorio Virtual.
Permisos.
Servidores Seguros.
Extensiones y Errores Personalizados.

Definicin de un Sitio Web


Un sitio web representa una aplicacin web para el desarrollor.
Esta compuesto por un conjunto de archivos entre los que se
cuentan pginas html, asp, php, imgenes, archivos, base de
datos, objetos entre otras cosas.
El usuario es un concepto que lo asocia a una pgina.

Caractersticas de un Sitio Web


Tiene asociada una IP y un puerto.
Apunta a un directorio fsico.
Tiene un nombre asociado.
Tiene permisos y usuarios asignables.
Tiene informacin de control sobre el sitio.
Tiene un documento por default asociado.
Pueden existir varios sitios en un mismo servidor.

Definicin de un directorio virtual


Un directorio web representa una carpeta virtual que reside
dentro de un servidor web.
Puede contener diferente archivos que permitan a la
aplicacin web funcionar sin problemas.

Caractersticas de un directorio virtual


No tiene Ip asociada.
Tiene permisos y usuarios asociados.
Apunta a una carpeta fsica.
Pueden existir n de directorios asociados.
Tiene documentos por default asociados.

Permisos
Se aplican sobre el sitio, directorio y archivos.
Dependiendo del sistema operativo, los permisos funcionarn
correctamente. Ejemplo: Foro de Juego de Negocios.
Los permisos ms comunes son:
Lectura
Ejecucin
Logs.

- Escritura
- Listado de directorios.

Servidores Seguros
La informacin que circula entre un cliente y un servidor se
transfiere en forma segura(encriptada).
El servidor se encuentra autenticado por una CA( Autoridad
Certificadora).
Ideal para cuando se quiere transmitir informacin
confidencial.

Extensiones y Errores Personalizados


Dependiendo de los mdulos instalados el servidor web podr
interpretar correctamente las extensiones de una pgina.(asp,
jsp, php entre otros.)
Errores tpicos como el 404, 403 que pueden ser
personalizados por el desarrollador.

Pasos para la creacin de un Sitio Web


1. Determinacin del alcance del proyecto, cuales son los
objetivos y mercado(demanda).
2. Investigacin de la competencia directa.
3. Eleccin de nombre de dominio e inscripcin en las
entidades respectivas.
4. Diseo, desarrollo e implementacin del sitio Web.

Pasos para la creacin de un Sitio Web


5. Determinacin del proveedor de hosting o housing.
6. Medicin interna y auditora externa del sitio web.
7. Mantencin del sitio web.
8. Marketing y promocin del sitio web.

Sitio Web- Conceptualizacin


Antes de realizar cualquier desarrollo es sumamente
importante conceptualizar el sitio y definir las expectativas del
cliente.
Se debe planificar cuidadosamente cada etapa, definiendo las
participaciones del cliente.
Esta etapa es la base para que el diseo y desarrollo pueda
ser exitoso.

Sitio Web- Conceptualizacin


Los requerimientos del cliente deben ser evaluados, en cuanto
al riegos que lleva y la factibilidad.
Utilizar herramientas de casos de Uso que faciliten la
compresin del cliente.
Construccin de prototipos.

LENGUAJES DE
PROGRAMACION DEL LADO
DEL CLIENTE

Un lenguaje del lado cliente es totalmente independiente


del servidor, lo cual permite que la pgina pueda ser
albergada en cualquier sitio.
Para que la pagina se pueda ver bien es necesario tener
instalados los plug-in adecuados.
.

El navegador es una especie de aplicacin capaz de


interpretar las rdenes recibidas en forma de cdigo HTML
fundamentalmente y convertirlas en las pginas que son el
resultado de dicha orden.

Los lenguajes de lado cliente (entre los cuales no slo se


encuentra el HTML sino tambin el Java y el JavaScript los cuales
son simplemente incluidos en el cdigo HTML) son aquellos que
pueden ser directamente "digeridos" por el navegador y no
necesitan un pretratamiento.

HTML
El lenguaje llamado HTML indica al navegador donde colocar
cada texto, cada imagen o cada video y la forma que tendrn
estos al ser colocados en la pgina.
Este lenguaje consta de etiquetas que tienen esta forma <B> o
<P>. Cada etiqueta significa una cosa.

JAVASCRIPT
Javascript es un lenguaje de programacin utilizado
para crear pequeos programitas encargados de
realizar acciones dentro del mbito de una pgina web.
Se trata de un lenguaje de programacin del lado del
cliente, porque es el navegador el que soporta la carga
de procesamiento. Su uso se basa fundamentalmente
en la creacin de efectos especiales en las pginas y la
definicin de interactividades con el usuario.

APPLETS DE JAVA
Se trata de pequeos programas hechos en
Java, que se transfieren con las pginas web y
que el navegador ejecuta en el espacio de la
pgina.
Los

applets de Java estn programados en


Java y precompilados.