|
|
(3 revisiones intermedias por el mismo usuario no mostrado) |
Línea 1: |
Línea 1: |
− | {{TEP}}
| |
| {{Usuario:ManuelRomero/DAW/despliegueWeb/arquitectura/Web/General}} | | {{Usuario:ManuelRomero/DAW/despliegueWeb/arquitectura/Web/General}} |
| <br/> | | <br/> |
Línea 146: |
Línea 145: |
| # [http://es.wikipedia.org/wiki/Akamai Akamai]. | | # [http://es.wikipedia.org/wiki/Akamai Akamai]. |
| # Contenidos estáticos, dinámicos y localización. | | # Contenidos estáticos, dinámicos y localización. |
− | # Alojamientos: hosting, housing | + | # [http://es.wikipedia.org/wiki/Alojamiento_web Alojamientos]: hosting, housing |
| </div> | | </div> |
| | | |
| <div class="slide"> | | <div class="slide"> |
| + | |
| ===Modelo cliente servidor=== | | ===Modelo cliente servidor=== |
| ; El servidor Web sirve páginas. miles de peticiones por segundo, [http://en.wikipedia.org/wiki/Keepalive|keepalive], ... | | ; El servidor Web sirve páginas. miles de peticiones por segundo, [http://en.wikipedia.org/wiki/Keepalive|keepalive], ... |
Línea 263: |
Línea 263: |
| ===Tecnologías para los servicios web=== | | ===Tecnologías para los servicios web=== |
| #SOAP:Protocolo que define el formato de los mensajes que se intercambian basado en http y XML | | #SOAP:Protocolo que define el formato de los mensajes que se intercambian basado en http y XML |
− | #REST:
| |
| #WSDL Interfaz pública basada en SML, descripcion de la utilidad, la localizacion e invocación del servicio | | #WSDL Interfaz pública basada en SML, descripcion de la utilidad, la localizacion e invocación del servicio |
| #UDDI Registro y publicación de información de servicios web disponibles. | | #UDDI Registro y publicación de información de servicios web disponibles. |
| + | #REST: (Representational State Transfer) es un estilo de arquitectura de software para |
| + | sistemas hipermedias distribuidos tales como la Web. |
| </div> | | </div> |
| | | |
| <div class="slide"> | | <div class="slide"> |
| + | |
| ===Evolución=== | | ===Evolución=== |
| + | <br/> |
| {{Pregunta|'''''¿a dónde vamos?'''''}} | | {{Pregunta|'''''¿a dónde vamos?'''''}} |
| </div> | | </div> |
− |
| |
| <div class="slide"> | | <div class="slide"> |
| + | |
| ===Videos en la red sobre la evolución=== | | ===Videos en la red sobre la evolución=== |
| *Aquí algunos vídeos que nos muestran la evolución de la red hasta la web 3.0 hoy en día aún una idea idílica y sin aclarar | | *Aquí algunos vídeos que nos muestran la evolución de la red hasta la web 3.0 hoy en día aún una idea idílica y sin aclarar |
Evolución de los servicios Web
- Primero hablaremos de qué es un servicio web o web service y posteriormente analizaremos brevemente la evolución
- Son muchas la definiciones que podemos encontrar
- Esto hace que el concepto englobe muchos términos y usos, elegimos una
- Información sobre servicios web
Web Service: definiciones
- Es un conjunto de aplicaciones y/o tecnologías con capacidad para actuar entre ellas en la Web.
- W3C define web service como un sistema de software diseñado para permitir interoperatibilidad máquina a máquina en una red.
Web service definicion según W3C
Definición
Un Servicio Web es una aplicación software identificada por un URI, cuyas interfaces se pueden definir, describir y descubrir mediante documentos XML.
- Los Servicios Web hacen posible la interacción entre agentes software (aplicaciones) utilizando mensajes XML intercambiados mediante protocolos de Internet
|
Web Service: idea general en la web
- Desde un punto de vista práctico lo podemos ver como API's Web que pueden ser accedidas en una red y ejecutadas en un sistema de hosting remoto.
- Estas aplicaciones o tecnologías intercambian datos entre sí con el objetivo de ofrecer unos servicios.
- El uso es el normal de un escenario cliente/servidor Los proveedores ofrecen sus servicios como procedimientos remotos y los usuarios solicitan un servicio llamando a estos procedimientos a través de la Web.
Web Service: qué hace este software
Objetivo
Proporcionan mecanismos de comunicación estándares entre diferentes aplicaciones
|
- Estas aplicaciones interactúan entre sí para presentar información dinámica al usuario.
- Para que esto sea posible, es necesaria una arquitectura de referencia estándar, que veremos mas adelante
Describamos un proceso donde se usen servicios web
Web Service: Ejemplo 1
- Un cliente solicita a una agencia de viajes una solicitud para un viaje. Se conecta a la página aprorta sus datos y el servidor web de la agencia de viajes contesta
Web Service: Ejemplo 1 (hoja 2)
- A la vez para poder responder a la solicitud se ha de verificar hotels, viajes y la tarjeta de crédito que aporte el cliente con lo que tenemos que el servidor web de la agencia tiene que interoperar con otros servidores web
- En todo este proceso intervienen una serie de tecnologías que hacen posible esta circulación de información.
Web Service: Ejemplo 1 (hoja 3)
- El ejemplo completo con los estándares usados quedaría
Evolución de los servicios web
- Evolución de la red implica evolución de muchos y variados servicios en la red
- Son muchas las referencias web que nos pueden ilustrar sobre este concepto
- La evolución de los servicios web han marcado la evolución de la web
Evolución de los servicios web
- Web 1.0: páginas estáticas, interacción hombre-máquina
- Web 2.0: Conocimiento colectivo, interacción máquina-maquina, servicios en la red
- Web 3.0: Web semántica, ya no buscaremos por palabras, el significado ???
- Web 4.0: Robots en la red???
Factores que favorecen la evolución
- La www y los servicios web van de la mano
- entre los factores que han impulsado el uso de servicios en la web tenemos:
- El contenido dinámico
- Los sitios web actuales proporcionan contenidos instantáneos. Un Servicio web debe ser capaz de combinar contenido proveniente de fuentes muy diferentes.
- Ancho de banda menos costoso
- Actualmente un Servicio web puede entregar tipos variables de contenidos como vídeo o audio. A medida que crezca el ancho de banda, los servicios web deben adaptarse a nuevos tipos de contenidos.
Factores que favorecen la evolución
- El almacenamiento es más barato y seguro
- Un Servicio web debe ser capaz de manejar cantidades masivas de datos, y debe poder hacerlo de forma inteligente.
- Internet ahora es móvil
- Con cientos de millones de dispositivos como teléfonos móviles, agendas electrónicas, etc. existentes actualmente, estamos llegando a un momento en el cual las computadoras están dejando de ser el dispositivo más común en Internet.
Factores que favorecen la evolución
- A medida que las plataformas se hacen más diversas, tecnologías como XML se volverán más importantes.
- Un servicio web no puede exigir que los usuarios ejecuten, por ejemplo, un navegador web tradicional en alguna versión de Microsoft Windows;
- Por el contrario, los servicios web deben servir a todo tipo de dispositivos, plataformas y navegadores, entregando contendido sobre una amplia variedad de tipos de conexión.
Evolucion de la web
Que es la Web
- Materializada por Tim Berners Lee sobre 1990.
- Popularizada con internet a partir de 1995
- Desde entonces el crecimiento ha sido exponencial.
- Hoy en día cualquiera puede tener dominios y múltiples sitios webs propios, blogs, wikis (como ésta), gran cantidad de serviciosgratuitos ofertados.
En qué consiste
- Protocolo HTTP, HTTPS
- Puerto 80, 446
- HTML, XHTML y CSS: hipertexto e hipermedia
- XML,
- Los tipos MIME
- Servidores y navegadores que se encuentran mediante URLs (y URIs)
- DNS que nos dan la ip a partir del URL
Qué hay detrás de una ip
- Una máquina, que puede tener varias IPs.
- Un repartidor de carga asume una IP para varias máquinas.
- Máquinas virtuales vs. clusters ¿Tendencias opuestas?
- Relación N:M entre IPs y máquinas.
- Appliances.
- IPv4, IPv6.
Modelo punto a punto con http
- Los proxies y las cachés (transparentes)
- Akamai.
- Contenidos estáticos, dinámicos y localización.
- Alojamientos: hosting, housing
Modelo cliente servidor
- El servidor Web sirve páginas. miles de peticiones por segundo, [1], ...
- El navegador
- las compone y visualiza (render)
- Diferencias de complejidad entre cliente y servidor, pero ambos tienen lo suyo.
Servidores web
- IE7: cada vez más compatible (ej: IE8)
- Opera: el que más se ajusta a los estándares.
- Safari, amaya, etc, etc.
- Navegar por línea de comandos: Lynx, curl, wget y otros bichos raros (+ APIs)
- Cuotas de mercado: http://www.w3schools.com/browsers/browsers_stats.asp
- Pretenden cubrir usabilidad y accesibilidad en la web.
Servicios Web
- En el servidor
- CGI.
- Scripts integrados en servidor: PHP, ASP, etc.
- Java, EJBs, ntiers, patterns, frameworks vs. POJOs, etc.
- En el cliente
- Javascript y DOM (DHTML)
- Flash.
Servicios Web
- Java applets.
- Efectos gráficos y validación.
- ¿Enemigos de la accesibilidad?
- Navegadores, compatibilidad e implementación de estándares.
- Seguridad: sandbox, XSS (Cross Site Scripting) ...
Quién habla en la web
- Diálogo hombre-máquina.
- Diálogo máquina-máquina:
- Acceso a páginas y formularios expuestos
-
- ejemplo con curl.
- ROBOTS.
Quién habla en la web
- SOAP,REST, WDSL, REST, SOA ...
- exposición de interfaces (API)
- https o firmas en los puntos de entrada.
- Agentes, brokers, orquestación de servicios.
- Equivalencia con los RPC y CORBA de la era preweb
Tecnologías asociadas a las aplicaciones web
Web 2.0
Definición
Término acuñado para referirse a una segunda generación de web basada en comunidades de usuarios y gama especial de servicios como las redes sociales, los blogs, los wikis o los folcsomias que fomentan la colaboración y el intercambio ágil de información entre usuarios
|
Tecnologías al lado del cliente
- Navegadores
- Scrips JavaScript, VisualBasic Script,
- Helpers: Abrir o ejecutar documentos multimedia y programas concretos
- Plug-ins Flash
- Applets Java, limitados
Tecnologías del documento
- HTML XHTML
- XML, DTD, XML SCHEMA, SML DOM, X-PATH
- CSS, XSL, XSLT, XSL-FO
- SVG
- SMIL
- VOICEML
- WML
Tecnologías al lado del servidor
- Módulos Compilados
- CGI(C, C++, Perl, Python,
- Servlets (Java, Multihebra, Gestion de sesion)
- Scripts(ASP, JSP, PHP)
- Programación distribuida RMI (Java), IIOP(CORBA)
- ASP.NET (Aplicaciones distribuidas y servicios web)
Tecnologías para los servicios web
- SOAP:Protocolo que define el formato de los mensajes que se intercambian basado en http y XML
- WSDL Interfaz pública basada en SML, descripcion de la utilidad, la localizacion e invocación del servicio
- UDDI Registro y publicación de información de servicios web disponibles.
- REST: (Representational State Transfer) es un estilo de arquitectura de software para
sistemas hipermedias distribuidos tales como la Web.
Evolución de redes sociales