Patrones y buenas prácticas en SOA/REST

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Patrones y buenas prácticas en SOA/REST"

Transcripción

1 Patrones y buenas prácticas en SOA/REST Software como Servicio y Distribuido 2010/2011 Diego Sevilla Ruiz DITEC Facultad de Informática Murcia, octubre de 2010 Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

2 Índice 1 Introducción 2 Patrones SOA/REST 3 Caché memcached 4 BBDD NoSQL 5 MapReduce 6 Arquitecturas reales basadas en REST Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

3 Índice 1 Introducción 2 Patrones SOA/REST 3 Caché memcached 4 BBDD NoSQL 5 MapReduce 6 Arquitecturas reales basadas en REST Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

4 Introducción Se verán usos avanzados de la arquitectura REST Se compararán con los enfoques más tradicionales Esta arquitectura permite escalar mucho más que las tradicionales Adiós a las BBDD relacionales y a las formas normales :) El uso de cachés y de programación funcional es fundamental Se verá Memcached y MapReduce Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

5 Resumen de REST Todo es un recurso (de conjunto o de elemento) Los recursos se identifican con URIs Uso de los verbos HTTP (CRUD) para obtener y modificar los recursos Importancia de los tipos MIME (microformatos) El estado se incluye en el recurso HATEOAS: Hypermedia as the Engine of Application State 1 1 http: //roy.gbiv.com/untangled/2008/rest-apis-must-be-hypertext-driven, Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

6 Índice 1 Introducción 2 Patrones SOA/REST 3 Caché memcached 4 BBDD NoSQL 5 MapReduce 6 Arquitecturas reales basadas en REST Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

7 Patrones SOA/REST Basada en la charla de Cesare Pautasso 2 La idea: Los conceptos de REST son relativamente sencillos Sin embargo, realizar buenos servicios basados en REST no es sencillo Se verán patrones y anti-patrones 2 REST-Inspired SOA Design Patterns (and Anti-Patterns), Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

8 Metodología de diseño REST 1 Identificar los recursos que se exponen como servicios 2 Modelar las relaciones (contenido, referencia) entre los recursos con enlaces (Nótese cómo esto se acerca al metamodelado que hemos visto) 3 Definir URLs amigables para los recursos 4 Comprender qué significa hacer GET, POST, PUT y DELETE a cada recurso (y si se permite o no) 5 Diseñar y documentar las representaciones de los recursos (JSON, XML, microformatos, etc.) 6 Implementar y hacer el deployment en un servidor web 7 Probar con un browser Dimensiones de trabajo Recursos y Representaciones Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

9 Metodología de diseño REST 1 Identificar los recursos que se exponen como servicios 2 Modelar las relaciones (contenido, referencia) entre los recursos con enlaces (Nótese cómo esto se acerca al metamodelado que hemos visto) 3 Definir URLs amigables para los recursos 4 Comprender qué significa hacer GET, POST, PUT y DELETE a cada recurso (y si se permite o no) 5 Diseñar y documentar las representaciones de los recursos (JSON, XML, microformatos, etc.) 6 Implementar y hacer el deployment en un servidor web 7 Probar con un browser Dimensiones de trabajo Recursos y Representaciones Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

10 Ejemplo: Servicio Doodle Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

11 Uso: Crear un poll POST para crear el poll: POST /pool <options>a, B, C</options> 201 Created Location: /pool/ Obtener el poll: GET /pool/ OK <options>a, B, C</options> <votes href="/vote"/> Se utiliza XML en este caso El recurso se aumenta con el recurso interno En otras representaciones el enlace se escribirá de otra manera iego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

12 Uso: Crear un poll POST para crear el poll: POST /pool <options>a, B, C</options> 201 Created Location: /pool/ Obtener el poll: GET /pool/ OK <options>a, B, C</options> <votes href="/vote"/> Se utiliza XML en este caso El recurso se aumenta con el recurso interno En otras representaciones el enlace se escribirá de otra manera iego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

13 Uso: Votar POST para crear el voto: POST /pool/432432/vote <name>diego Sevilla</name> <choice>c</choice> 201 Created Location: /pool/432432/vote/1 Obtener el poll: GET /pool/ OK <options>a, B, C</options> <votes><vote id="1"> <name>...</name> <choice>c</choice> </vote></votes> Se obtienen todos los votos (se podría haber dejado el enlace) Decisión de implementación (relación contenido... tamaño?) iego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

14 Uso: Votar POST para crear el voto: POST /pool/432432/vote <name>diego Sevilla</name> <choice>c</choice> 201 Created Location: /pool/432432/vote/1 Obtener el poll: GET /pool/ OK <options>a, B, C</options> <votes><vote id="1"> <name>...</name> <choice>c</choice> </vote></votes> Se obtienen todos los votos (se podría haber dejado el enlace) Decisión de implementación (relación contenido... tamaño?) iego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

15 Patrones Resumen Negociación de contenido (Content Negotiation) Permite múltiples clientes, evolución Direccionamiento de entidades (Entity Endpoint) Cómo se nombran? Redirección de entidades (Entity Redirection) La redirección permite el balanceo de carga, tolerancia a fallos, etc. Capacidad de invocación idempotente (Idempotent Capability) Al igual que en el web, se debe perseguir esta cualidad (estilo funcional) Contrato uniforme (Uniform Contract) Uso de métodos fijos Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

16 Patrón Contrato uniforme Construir APIs liga al cliente y al servidor Causa acoplamiento cuando las aplicaciones evolucionan Un cliente tiene que conocer múltiples APIs de distintos proveedores de servicios Solución: Ofrecer un interfaz uniforme (p. ej. verbos de HTTP) que oculte las particularidades de cada servicio Ventajas: Abstracción de servicios, loose coupling, Reusabilidad, Composición de servicios, etc. Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

17 Patrón Contrato uniforme (ii) POST vs. GET vs. PUT GET es una operación de sólo lectura POST es de modificación (por eso los browsers nos preguntan si reenviar la petición) Cómo se crean los recursos? PUT /recurso/<id> Y si está repetido? GUID por parte del cliente? POST /recurso 301 Moved Permanently Location: /recurso/<id> Tiene el problema de que no es idempotente (duplicación en caso de fallo en las comunicaciones) Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

18 Patrón Redirección de recursos HTTP soporta de forma nativa la redirección con códigos 3xx: GET /old/x 301 Moved Permanently Location: /new/y GET /new/y 200 OK También se puede devolver el código 307 (Temporary Redirect) Se puede usar para balanceo de carga Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

19 Patrón Direccionamiento de recursos Cómo reutilizar servicios (URLs) dentro de la fachada de los servicios? El «interfaz» ahora es el enlazado de recursos El reuso se hace a nivel de recursos Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

20 Patrón Direccionamiento de recursos (ii) Ofrecer todos los recursos reutilizables a través de «servicios» El enlazado hace que se puedan reutilizar en otros sitios Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

21 Patrón Direccionamiento de recursos (iii) Diseño de URIs Preferir nombres a verbos GET /recurso/id=89?action=delete URLs cortas DELETE /recurso/66 Preferir URLs con parámetros posicionales en vez de pares clave/valor No usar postfijos con el tipo (p. ej..xml,.json) Rompen la negociación de contenido (se verá después) Las URLs no deben cambiar Usar redirección si se necesita Cuidado: Los patrones de URIs crean dependencia entre cliente y servidor (son como APIs) Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

22 Patrón Negociación de contenido Cómo soportar diferentes clientes? Versiones Capacidades Esperanzas De una forma evolutiva? Solución: Especificar el versionado y las características en base a media types Microformatos (curioso que el autor no lo mencione) Ventajas: Loose Coupling, mayor interoperabilidad, etc. Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

23 Patrón Negociación de contenido (ii) No requiere del uso de más mensajes: GET /recurso Accept: text/html, application/json 200 OK Content-type: application/json (Respuesta 406 si no se puede enviar ningún tipo requerido) Se pueden utilizar especificadores de calidad para especificar preferencias: Accept: text/html;q=0.1, application/json;q=0.9 También en diferentes dimensiones: Accept-Language, Accept-Encoding, Accept-Charset, etc. Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

24 Patrón Capacidad de invocación idempotente Cómo protegerse de fallos de envío de mensajes en sistemas distribuidos? Al perderse el mensaje de vuelta se envía dos veces la petición Solución Usar ESB/MOM (ofrece envío de mensajes con recuperación de fallos) Diseñar las peticiones como idempotentes (filosofía REST) Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

25 Patrón Capacidad de invocación idempotente (ii) Idempotente vs. No seguro Las peticiones idempotentes se pueden enviar varias veces sin problemas: GET /libro/x PUT /pool/y DELETE /libro/z Si algo falla, la petición se puede reintentar Las respuestas «seguras» son aquellas que no modifican el estado del servidor (GET) Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

26 Patrón Capacidad de invocación idempotente (iii) Idempotente vs. No seguro Las peticiones que modifican el estado son «no seguras»: withdraw(account1, 200) deposit(account2, 200) POST /clients Si algo falla en el último caso, harán falta mecanismos adicionales de reconciliación de estado (con identificadores, etc.) A veces los APIs se pueden diseñar de manera que sean idempotentes: B = getbalance(); // Idempotente B = B + 200; // Local setbalance(b); // Idempotente Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

27 Patrón Capacidad de invocación idempotente (iv) Concurrencia Qué pasa si otro cliente accede mientras tanto? Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

28 Patrón Capacidad de invocación idempotente (v) Concurrencia optimista Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

29 Antipatrones Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

30 Antipatrones HTTP como túnel GET /api?method=addcustomer&name=diego GET /api?method=deletecustomer&id=42 Todo sobre GET Ventaja: Se puede usar fácilmente desde un browser Inconvenientes: GET se debe usar para peticiones idempotentes (caché, tolerancia a fallos, etc.) Algunos sistemas tienen limitaciones en el tamaño de la URL Todo sobre POST Ventaja: Se puede enviar cualquier tamaño de datos (es lo que utiliza SOAP) Inconvenientes: POST no es idempotente ni se le puede hacer caché POST /servicio/endpoint /servicio/endpoint es un recurso? Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

31 Índice 1 Introducción 2 Patrones SOA/REST 3 Caché memcached 4 BBDD NoSQL 5 MapReduce 6 Arquitecturas reales basadas en REST Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

32 Caché memcached Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

33 Caché memcached (ii) 1 function get_foo ( foo_id ) foo = memcached_get (" foo :". foo_id ) 3 return foo if defined foo 5 foo = fetch_ foo_ from_ database ( foo_id ) memcached_set (" foo :". foo_id, foo ) 7 return foo end Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

34 Caché memcached (iii) $ telnet localhost Trying Connected to localhost. 4 Escape character is ^]. get foo 6 VALUE foo 0 2 hi 8 END Protocolo sencillo basado en texto Representación de valores como string ( imágenes?) Se pueden usar varios servidores ( sincronización?) Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

35 Índice 1 Introducción 2 Patrones SOA/REST 3 Caché memcached 4 BBDD NoSQL 5 MapReduce 6 Arquitecturas reales basadas en REST Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

36 BBDD NoSQL MongoDB, CouchDB Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

37 CouchDB Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

38 CouchDB (ii) Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

39 CouchDB (iii) Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

40 CouchDB (iv) Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

41 CouchDB (v) Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

42 CouchDB (vi) $ curl - XPOST - HContent - type : application / json localhost :5984/ watches -- data {" brand " : " Seiko ", " model ":" skx007k1 " } 2 {" ok ": true," id ":" cfe517a13ace79a06fd d5 "," rev ":"1 - d2908ae e45c37f782ce "} 4 $ curl - XGET - HContent - type : application / json localhost :5984/ watches / cfe517a13ace79a06fd d5 {" _id ":" cfe517a13ace79a06fd d5 "," _rev ":"1 - d2908ae e45c37f782ce "," brand ":" Seiko "," model ":" skx007k1 "} Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

43 Índice 1 Introducción 2 Patrones SOA/REST 3 Caché memcached 4 BBDD NoSQL 5 MapReduce 6 Arquitecturas reales basadas en REST Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

44 Índice 1 Introducción 2 Patrones SOA/REST 3 Caché memcached 4 BBDD NoSQL 5 MapReduce 6 Arquitecturas reales basadas en REST Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

45 Referencias C. Pautasso Some REST Design Patterns (and Anti-Patterns) InfoQ (varios autores) InfoQ Explores REST emag rest/en/pdf/rest%20emag.pdf S. Tilkov REST Anti-Patterns y REST doubts M. Paternostro, K. Hussey Building RESTful Java Applications with EMF building-restful-java-applications-with-emf Diego Sevilla Ruiz (DITEC Facultad de Informática) Patrones y buenas prácticas en SOA/REST Murcia, octubre de / 42

Sesión 5 Introducción a REST

Sesión 5 Introducción a REST Sesión 5 Introducción a REST Sistemas Distribuidos Diego Sevilla Ruiz DITEC Facultad de Informática Murcia, 2012 Diego Sevilla Ruiz (DITEC Facultad de Informática) Sesión 5 Introducción a REST Murcia,

Más detalles

RESTful 4 all. Diego Sapriza diego@sapriza.net @AV4TAr

RESTful 4 all. Diego Sapriza diego@sapriza.net @AV4TAr RESTful 4 all Diego Sapriza diego@sapriza.net @AV4TAr Como diseñar una API RESTful sin morir en el intento. Hi! I M Diego Sapriza @AV4TAr ..uy PHP.meetup.uy DevOps.meetup.uy El mundo evoluciona constantemente

Más detalles

Si usted quiere desarrollar con Bluevia y Java, esto es lo primero que debe saber

Si usted quiere desarrollar con Bluevia y Java, esto es lo primero que debe saber LIMINAL Si usted quiere desarrollar con Bluevia y Java, esto es lo primero que debe saber Mario Linares Vásquez mario.linares@liminal-it.con Junio 30 de 2011 Network as a Service - NaaS Que información

Más detalles

Portal Inteligente Medellín Documentación de la Arquitectura de Software

Portal Inteligente Medellín Documentación de la Arquitectura de Software Guías para las API de servicios Portal Inteligente Medellín Documentación de la Arquitectura de Software Juan G. Lalinde-Pulido Claudia M. Zea Luis F. Londoño Nicolás Hock Sergio A. Monsalve Departamento

Más detalles

Creando una AOS con PHP: Patrones de Diseño de Servicios Web

Creando una AOS con PHP: Patrones de Diseño de Servicios Web Creando una AOS con PHP: Patrones de Diseño de Servicios Web Jesús M. Castagnetto, Ph.D. Linux Week 2010 15 19 de Marzo, 2010 Linux IDES - Pontificia Universidad Católica del Perú Lima, Perú Advertencia

Más detalles

Servicios web. Jorge Iván Meza Martínez jimezam@gmail.com

Servicios web. Jorge Iván Meza Martínez jimezam@gmail.com Servicios web Jorge Iván Meza Martínez jimezam@gmail.com Especialización en Gestión de Redes de Datos Universidad Nacional de Colombia Sede Manizales 1/71 Contenidos Que es un servicio web. Tecnologías

Más detalles

Sesión 17. Servicios web RESTful

Sesión 17. Servicios web RESTful Sesión 17. Servicios web RESTful Luisa Fernanda Rincón Pérez 2015-1 Qué vimos la sesión pasada? 1. Consumir servicio web SOAP desde JAVA 2. Consumir servicio web en PHP 3. Exponer servicio web en PHP Qué

Más detalles

Service Oriented Architecture

Service Oriented Architecture Programación Concurrente y Distribuida Ingeniería en Informática Service Oriented Architecture José Carlos Cortizo Pérez josecarlos.cortizo@uem.es http://www.esp.uem.es/jccortizo D. Sistemas Informáticos

Más detalles

Tema 2 El Servicio Web

Tema 2 El Servicio Web Tema 2 El Servicio Web Eduardo Martínez Graciá Humberto Martínez Barberá Departamento de Ingeniería de la Información y las Comunicaciones Universidad de Murcia Introducción Nace en el CERN, en 1989 Surge

Más detalles

Sistemas Distribuidos Servicios web. Rodrigo Santamaría

Sistemas Distribuidos Servicios web. Rodrigo Santamaría + Sistemas Distribuidos Servicios web Rodrigo Santamaría + Servicios web Introducción IDL SOAP REST XML/JSON-RPC 2 + Introducción 3 n Java RMI o Sun RPC son middleware de nivel alto, aptos para realizar

Más detalles

Tema 1 HTTP y aplicaciones web

Tema 1 HTTP y aplicaciones web Tema 1 HTTP y aplicaciones web Indice 1. HTTP para sitios web estáticos 2. HTTP básico para aplicaciones web 3. Aplicaciones AJAX 4. APIs REST 1.1. HTTP para sitios web estáticos Petición/respuesta HTTP

Más detalles

Tema 4: Tecnologías Web Java

Tema 4: Tecnologías Web Java Tema 4: Tecnologías Web Java Introducción Aplicación web Aplicación que corre en al menos un servidor y a la que el usuario accede desde un cliente de propósito general (ej.: navegador en un PC, teléfono

Más detalles

Desarrollo de una arquitectura orientada a servicios para un prototipo de una línea de productos de software

Desarrollo de una arquitectura orientada a servicios para un prototipo de una línea de productos de software Desarrollo de una arquitectura orientada a servicios para un prototipo de una línea de productos de software Ramón Gómez-Romero, Karen Cortés Verdin, Juan Carlos Pérez Arriaga, Ángeles Arenas Valdés Universidad

Más detalles

5.1 Introducción. 5.2 El protocolo HTTP.

5.1 Introducción. 5.2 El protocolo HTTP. TEMA 5:. 5.1 Introducción. Inicialmente la idea del World Wide Web 1 surgió en el laboratorio de altas energías del CERN, el Centro Europeo de Investigación Nuclear. La mayoría de los experimentos, altamente

Más detalles

DESARROLLO DE APLICACIONES PARA LA WEB II

DESARROLLO DE APLICACIONES PARA LA WEB II INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE CÓMPUTO DESARROLLO DE APLICACIONES PARA LA WEB II ENCABEZADOS Y MÉTODOS BELEN HURTADO ORTIZ 2008630140 8CV5 ENCABEZADOS Y MÉTODOS DE HTTP Comandos Comando

Más detalles

Clase. geniería de la Computación. Departamento de Ciencias e Ing. Diego C. Martínez - DCIC-UNS

Clase. geniería de la Computación. Departamento de Ciencias e Ing. Diego C. Martínez - DCIC-UNS Ingeniería de Ap plicaciones Web Clase 2 Diego C. Martínez Departamento de Ciencias e Ing geniería de la Computación Universidad Nacional del Sur Internet y sus servicios Internet define una forma de conexión

Más detalles

Desarrollo y servicios web

Desarrollo y servicios web Desarrollo y servicios web Luisa Fernanda Rincón Pérez 2014-2 Qué vimos la clase pasada? Introducción a Big Data Introducción a bases de datos NOSQL Características bases de datos NOSQL MongoDB como motor

Más detalles

Redes de Computadores II

Redes de Computadores II Redes de Computadores II Capa de Aplicación HTTP Las siguientes láminas son material de apoyo para el estudio de la materia de Redes II. No son un contenido exhaustivo del material. Se recomienda suplementar

Más detalles

HTTP Introducción. Redes de Datos Ing. Marcelo Utard / Ing. Pablo Ronco FACULTAD DE INGENIERIA UNIVERSIDAD DE BUENOS AIRES

HTTP Introducción. Redes de Datos Ing. Marcelo Utard / Ing. Pablo Ronco FACULTAD DE INGENIERIA UNIVERSIDAD DE BUENOS AIRES Introducción Protocolo de capa de aplicación utilizado para la transferencia de Recursos u objetos. Opera sobre TCP típicamente en el puerto 80 Simple Stateless Genérico Utiliza las extenciones MIME. Transporte

Más detalles

Sistemas Distribuidos

Sistemas Distribuidos Sistemas Distribuidos Sesión 1 Introducción a los Sistemas Distribuidos Diego Sevilla Ruiz DITEC Facultad de Informática Murcia, septiembre 2010 Diego Sevilla Ruiz (DITEC Facultad de Informática) Sistemas

Más detalles

Web Service: Consulta de Sistema de Turnos Manual de referencia

Web Service: Consulta de Sistema de Turnos Manual de referencia Web Service: Consulta de Sistema de Turnos Manual de referencia Versión API: 0.1 (beta) Última revisión: 5 de Junio de 2015 Carlos Gabriel Vergara Departamento de Sistemas Subsecretaría de Informática

Más detalles

(Servicio Web Netbeans-java,Glassfish MySQL)

(Servicio Web Netbeans-java,Glassfish MySQL) GUIA DE LABORATORIO N 9 A (Servicio Web Netbeans-java,Glassfish MySQL) Objetivo: Crear servicios web utilizando la arquitectura REST, para obtener información desde un servidor web montado localmente con

Más detalles

CA User Activity Reporting Module

CA User Activity Reporting Module CA User Activity Reporting Module Guía de la API de automatización virtual de UARM r12.5 r12.5.02 Esta documentación, que incluye sistemas incrustados de ayuda y materiales distribuidos por medios electrónicos

Más detalles

Parte III: AJAX y REST

Parte III: AJAX y REST Tema 3: Javascript Parte III: AJAX y REST Texto http://www.flickr.com/photos/kosmar/62381076 Cómo hacer peticiones al servidor desde Javascript, usando el estilo REST AJAX 2 Asynchronous Javascript And

Más detalles

MICROSITIOS. Perfiles

MICROSITIOS. Perfiles MICROSITIOS Perfiles API para el consumo de servicios encargados de la creación, visualización, edición, eliminación y demás operaciones sobre los perfiles de usuarios de Metaportal. METAPORTAL 18/07/2014

Más detalles

Arquitecturas REST (Representa3onal State Transfer)

Arquitecturas REST (Representa3onal State Transfer) Arquitecturas REST (Representa3onal State Transfer) Protocolo HTTP Hypertext Transfer Protocol RFC2616:h"p://www.ie*.org/rfc/rfc2616.txt Protocolo orientado a transacciones Esquema pe3ción/respuesta entre

Más detalles

HTTP. Redes I. Departamento de Sistemas Telemáticos y Computación (GSyC) Noviembre de 2011. GSyC - 2011 HTTP 1

HTTP. Redes I. Departamento de Sistemas Telemáticos y Computación (GSyC) Noviembre de 2011. GSyC - 2011 HTTP 1 HTTP Redes I Departamento de Sistemas Telemáticos y Computación (GSyC) Noviembre de 2011 GSyC - 2011 HTTP 1 c 2011 Grupo de Sistemas y Comunicaciones. Algunos derechos reservados. Este trabajo se distribuye

Más detalles

Desarrollo y servicios web

Desarrollo y servicios web Desarrollo y servicios web Luisa Fernanda Rincón Pérez 2015-1 Qué vimos la clase pasada? 1. Fin tutorial HTML 2. Nombres de dominio 3. URLs 3 Sesión 4. Método GET - POST Qué haremos hoy? 1. Tipos de solicitudes

Más detalles

Laboratorio de Computación IV. Clase 1. Andrés Fortier

Laboratorio de Computación IV. Clase 1. Andrés Fortier Laboratorio de Computación IV Clase 1 Andrés Fortier Antes de comenzar Último semestre de la tecnicatura. Tienen los conceptos básicos, los vamos a poner en práctica en un proyecto. Piensen en una pasantía

Más detalles

Máster Universitario en Ingeniería Informá3ca. REST avanzado. Sistemas de Información Orientados a Servicios RODRIGO SANTAMARÍA

Máster Universitario en Ingeniería Informá3ca. REST avanzado. Sistemas de Información Orientados a Servicios RODRIGO SANTAMARÍA Máster Universitario en Ingeniería Informá3ca REST avanzado Sistemas de Información Orientados a Servicios RODRIGO SANTAMARÍA 2 OAuth Flask REST avanzado Objetivo 3 En Sistemas Distribuidos vimos cómo:

Más detalles

Desarrollo y servicios web

Desarrollo y servicios web Desarrollo y servicios web Luisa Fernanda Rincón Pérez 2014-2 2 Sesión 3. Arquitectura web básica parte 2 Qué haremos hoy? 3 1. La era post pc 2. Nombres de dominio 3. URL 4.HTTP( GET / POST) La era post-pc

Más detalles

CURSOS DE VERANO 2014

CURSOS DE VERANO 2014 CURSOS DE VERANO 2014 CLOUD COMPUTING: LA INFORMÁTICA COMO SERVICIO EN INTERNET LA PLATAFORMA GOOGLE CLOUD PLATFORM. GOOGLE APP ENGINE Pedro A. Castillo Valdivieso Universidad de Granada http://bit.ly/unia2014

Más detalles

Introducción a RIA. Andrés Pastorini. TRIA Tecnólogo Informático

Introducción a RIA. Andrés Pastorini. TRIA Tecnólogo Informático a RIA Andrés Pastorini TRIA Tecnólogo Informático El objetivo principal de la asignatura es forma al estudiante en el diseño y desarrollo de aplicaciones web ricas. Los objetivos de la asignatura son:

Más detalles

Uso de propiedades y modelos para las pruebas de sistemas distribuidos basados en la integración de componentes heterogéneos

Uso de propiedades y modelos para las pruebas de sistemas distribuidos basados en la integración de componentes heterogéneos Uso de propiedades y modelos para las pruebas de sistemas distribuidos basados en la integración de componentes heterogéneos Miguel A. Francisco 1 Laura M. Castro 2 1 Interoud Innovation S.L. (Spain) miguel.francisco@interoud.com

Más detalles

TECNOLOGÍAS ASOCIADAS A LAS APLICACIONES WEB

TECNOLOGÍAS ASOCIADAS A LAS APLICACIONES WEB TECNOLOGÍAS ASOCIADAS A LAS APLICACIONES WEB Existen varios tipos de tecnologías para los Servidores Web, estas tecnologías se pueden dividir en 4 grupos principales que son: Tecnologías al lado del cliente

Más detalles

Patrones de Alto nivel: Patrones de Arquitectura Patrones de nivel medio: Patrones de Diseño Patrones de bajo nivel: Idioms

Patrones de Alto nivel: Patrones de Arquitectura Patrones de nivel medio: Patrones de Diseño Patrones de bajo nivel: Idioms Patrones Patrones Es una solución reusable de problemas comunes. Los patrones solucionan problemas que existen en muchos niveles de abstracción. desde el análisis hasta el diseño y desde la arquitectura

Más detalles

PRUEBAS FUNCIONALES Y DE ACEPTACIÓN

PRUEBAS FUNCIONALES Y DE ACEPTACIÓN PRUEBAS FUNCIONALES Y DE ACEPTACIÓN Por: Julián Camilo Ortega Muñoz Pontificia Universidad Javeriana 2013 INTRODUCCIÓN Este documento tiene como propósito demostrar que las funcionalidades de la aplicación

Más detalles

TFM Comunicación, Redes y Gestión de Contenidos

TFM Comunicación, Redes y Gestión de Contenidos TFM Comunicación, Redes y Gestión de Contenidos Aplicación móvil hibrida para control de asistencia y servicio técnico a domicilio y gestión de partes de trabajo Autor: Patricia Paguay Lara Tutorizado

Más detalles

CURSOS DE VERANO 2014

CURSOS DE VERANO 2014 CURSOS DE VERANO 2014 CLOUD COMPUTING: LA INFORMÁTICA COMO SERVICIO EN INTERNET La plataforma Google Cloud Platform. Google App Engine Pedro A. Castillo Valdivieso Universidad de Granada La plataforma

Más detalles

Aplicaciones Web. Introducción. David Cabrero Souto. Grupo MADS (http://www.grupomads.org/) Universidade da Coruña

Aplicaciones Web. Introducción. David Cabrero Souto. Grupo MADS (http://www.grupomads.org/) Universidade da Coruña Aplicaciones Web Introducción David Cabrero Souto Grupo MADS (http://www.grupomads.org/) Universidade da Coruña Ingredientes principales Arquitectura Cliente/Servidor Protocolos y estándares Web HTTP,

Más detalles

4.5 APIs Java y Java EE para Servicios Web

4.5 APIs Java y Java EE para Servicios Web 4.5 APIs Java y Java EE para Servicios Web 4.5.1 JAXB (Java Architecture for XML Binding) APIs clásicas para procesamiento de documentos XML SAX (Simple API for XML): procesamiento de XML basado en eventos

Más detalles

Servicios REST con Eclipse y JAX-RS

Servicios REST con Eclipse y JAX-RS Servicios REST con Eclipse y JAX-RS Software como Servicio y Distribuido 2011/2012 Diego Sevilla Ruiz DITEC Facultad de Informática Murcia, noviembre de 2011 Diego Sevilla Ruiz (DITEC Facultad de Informática)Servicios

Más detalles

TEMA 5. Otras arquitecturas distribuidas IV. Web Services

TEMA 5. Otras arquitecturas distribuidas IV. Web Services TEMA 5. Otras arquitecturas distribuidas IV. Web Services IV. Web Services 1. Qué son los Web Services? 2. Ejemplos de Web Services 3. Tecnologías y arquitectura 3.1. Arquitectura 3.2. Lenguaje de descripción:

Más detalles

Máster Universitario en Ingeniería Informá3ca. REST avanzado. Sistemas de Información Orientados a Servicios RODRIGO SANTAMARÍA

Máster Universitario en Ingeniería Informá3ca. REST avanzado. Sistemas de Información Orientados a Servicios RODRIGO SANTAMARÍA Máster Universitario en Ingeniería Informá3ca REST avanzado Sistemas de Información Orientados a Servicios RODRIGO SANTAMARÍA 2 OAuth Flask REST avanzado Objetivo 3 En Sistemas Distribuidos vimos cómo:

Más detalles

Quiz 11: Crear preguntas. Juan Quemada, DIT - UPM

Quiz 11: Crear preguntas. Juan Quemada, DIT - UPM Quiz 11: Crear preguntas Juan Quemada, DIT - UPM 1 Quiz 10: Crear preguntas Objetivo: Introducir en la aplicación Quiz un formulario que permita crear preguntas nuevas y añadirlas a la base de datos. Paso

Más detalles

Clase 4. Ajax XML. XML Ajax definición Breve explicación de como funciona el HTTP XMLHttpRequest. El XML se creó para que cumpliera varios objetivos.

Clase 4. Ajax XML. XML Ajax definición Breve explicación de como funciona el HTTP XMLHttpRequest. El XML se creó para que cumpliera varios objetivos. Clase 4 Ajax XML Ajax definición Breve explicación de como funciona el HTTP XMLHttpRequest XML El XML se creó para que cumpliera varios objetivos. Que fuera idéntico a la hora de servir, recibir y procesar

Más detalles

Capacitación Efectiva SOA y Web Services con Java

Capacitación Efectiva SOA y Web Services con Java Descripción: SOA es un paradigma de arquitectura para diseñar y desarrollar sistemas distribuidos. Las soluciones SOA han sido creadas para satisfacer los objetivos de negocio las cuales incluyen facilidad

Más detalles

Laboratorio de Aplicaciones Telemáticas (Curso 2009/2010)

Laboratorio de Aplicaciones Telemáticas (Curso 2009/2010) Desarrollo de aplicaciones Web con Servlets y JSP Laboratorio de Aplicaciones Telemáticas (Curso 2009/2010) Jesús Arias Fisteus jaf@it.uc3m.es Desarrollo de aplicaciones Web con Servlets y JSP p. 1 URIs

Más detalles

Una guía para el diseño de API y REST

Una guía para el diseño de API y REST Una guía para el diseño de API y REST Si la única herramienta que tuviera fuera un martillo... En su libro The Psychology of Science publicado en 1966, el psicólogo estadounidense Abraham Maslow trató

Más detalles

GALA. Servicios WEB. Curso ASP.NET Desarrollo de Sitios y Servicios Web con Visual Basic 2010, 24 h. L25. Servicios Web en Integración

GALA. Servicios WEB. Curso ASP.NET Desarrollo de Sitios y Servicios Web con Visual Basic 2010, 24 h. L25. Servicios Web en Integración L25. Servicios Web en Integración L25. en ASP.NET Tipo de proyecto Archivos.ASMX Igual que los.aspx, UN URL Imports System Imports System.Web.Services

Más detalles

Protocolo HTTP Apache. Servicios HTTP. Esteban De La Fuente Rubio esteban@delaf.cl L A TEX. Universidad Andrés Bello. 17 jun 2011

Protocolo HTTP Apache. Servicios HTTP. Esteban De La Fuente Rubio esteban@delaf.cl L A TEX. Universidad Andrés Bello. 17 jun 2011 HTTP esteban@delaf.cl L A TEX Universidad Andrés Bello 17 jun 2011 Tabla de contenidos 1 Protocolo HTTP 2 Protocolo HTTP Hypertext Transfer Protocol. Protocolo utilizado para las transacciones en Internet.

Más detalles

GUIA DE LABORATORIO N 8 A(Netbeans-java,Glassfish)

GUIA DE LABORATORIO N 8 A(Netbeans-java,Glassfish) UNIVERSIDAD DE EL SALVADOR FACULTAD DE INGENIERIA Y ARQUITECTURA ESCUELA DE INGENIERIA DE SISTEMAS INFORMATICOS PROGRAMACION PARA DISPOSITIVOS MOVILES PDM115 Ciclo I-2014 GUIA DE LABORATORIO N 8 A(Netbeans-java,Glassfish)

Más detalles

Funcionamiento de Servicios Web, FTP

Funcionamiento de Servicios Web, FTP Funcionamiento de Servicios Web, FTP Tema 2.- Nivel de aplicación en Internet Dr. Daniel Morató Redes de Computadores Ingeniero Técnico en Informática de Gestión, 2º curso Material adaptado del libro Computer

Más detalles

Contrato de Servicio ServiciosPortalWS

Contrato de Servicio ServiciosPortalWS Contrato de Servicio WS Versión: 1.2 15/01/2015 HOJA DE CONTROL REGISTRO DE CAMBIOS Cambio Causa del Cambio Responsable del Cambio Fecha del Cambio 1 Versión Inicial 2 Revisión Subdirección de Informática

Más detalles

Servicios web. Contenido. Programación en Internet Curso 2007-2008. Introducción Los pilares (SOAP, WSDL, UDDI) Desarrollo de un servicio web

Servicios web. Contenido. Programación en Internet Curso 2007-2008. Introducción Los pilares (SOAP, WSDL, UDDI) Desarrollo de un servicio web Departamento de Lenguajes y Sistemas Informáticos Servicios web Programación en Internet Curso 2007-2008 Contenido Introducción Los pilares (SOAP, WSDL, UDDI) Desarrollo de un servicio web DLSI - Universidad

Más detalles

UD 4: Instalación y administración de servicios Web SRI

UD 4: Instalación y administración de servicios Web SRI Instalación y administración de servicios Web SRI RESULTADOS DE APRENDIZAJE Administra servidores Web aplicando criterios de configuración y asegurando el funcionamiento del servicio. Introducción - WWW

Más detalles

Ejercicios de AJAX y REST

Ejercicios de AJAX y REST Índice 1 AJAX (1 punto)... 2 2 Servicios REST (1.5 puntos)... 3 3 Gestión de errores en servicios REST (0.5 puntos)...5 1. AJAX (1 punto) Vamos a cambiar la búsqueda de usuarios para que funcione mediante

Más detalles

Qué significan los errores más habituales que devuelve Apache y cómo solucionarlos?

Qué significan los errores más habituales que devuelve Apache y cómo solucionarlos? Qué significan los errores más habituales que devuelve Apache y cómo solucionarlos? Cardenal Gardoki, 1 48008 BILBAO (Vizcaya) Teléfono: 902 012 199 www.hostalia.com Para que las páginas web puedan estar

Más detalles

Arquitecturas Distribuidas. TEMA 1. Introducción a las arquitecturas distribuidas

Arquitecturas Distribuidas. TEMA 1. Introducción a las arquitecturas distribuidas Arquitecturas Distribuidas TEMA 1. Introducción a las arquitecturas distribuidas Contenido del tema I I. Arquitecturas Distribuidas: definición y requisitos II. Ejemplo de Arquitectura Distribuida: el

Más detalles

HyperText Transfer Protocol

HyperText Transfer Protocol HyperText Transfer Protocol Ing. Carlos A. Barcenilla c.a.barcenilla@ieee.org Basado en HTTP Made Really Easy http://www.jmarshall.com/easy/http/ 1 Qué es HTTP? HTTP significa Hypertext Transfer Protocol.

Más detalles

Introducción a WS-REST. Ing. Guillermo Roldós Agosto 2010

Introducción a WS-REST. Ing. Guillermo Roldós Agosto 2010 Introducción a WS-REST Ing. Guillermo Roldós Agosto 2010 Agenda Descripción general Arquitectura orientada a recursos (ROA) Soporte Java y.net Calidad de servicio Casos de estudio Dominios de aplicación

Más detalles

Tema 4: Diseño e Implementación de la Capa Web

Tema 4: Diseño e Implementación de la Capa Web Tema 4: Diseño e Implementación de la Capa Web Índice 4.1 Tutorial de Servlets y JSPs 4.2 Tutorial de Tapestry 4.3 Caso de Estudio: Diseño e Implementación de la Capa Web de MiniBank 4.4 Caso de estudio:

Más detalles

Acoplamiento e interoperabilidad

Acoplamiento e interoperabilidad Máster Universitario en Ingeniería Informá3ca Acoplamiento e interoperabilidad Sistemas de Información Orientados a Servicios RODRIGO SANTAMARÍA 2 Acoplamiento débil Tipos de acoplamiento Cabalgando el

Más detalles

Qué es la Web? (I) Arquitecturas Distribuidas 10/11

Qué es la Web? (I) Arquitecturas Distribuidas 10/11 TEMA 2. La Web Tema 2. La Web 1. Qué es la Web? 2. Cronología 3. Comparación entre servidores web Funcionamiento del WWW 4.1. Identificadores URL 4.2. Protocolo HTTP 4.3. Lenguaje HTML 5. Mejoras actuales

Más detalles

Capa de Aplicación (Parte 2 de 2)

Capa de Aplicación (Parte 2 de 2) Capa de Aplicación (Parte 2 de 2) Redes de Computadoras HTTP (Hypertext Transfer Protocol) 1 Qué es Internet? Internet conecta a un conjunto de redes usando protocolos estándar Protocolos de enrutamiento,

Más detalles

THEATER LOCATION. iphone Application

THEATER LOCATION. iphone Application THEATER LOCATION iphone Application INDICE Diseño... 1 ios... 4 Gestor de Contenidos... 9 Presupuesto... 11 DISEÑO» MAPA DE LOCALIZACIONES Indicador de localización. 12:30 Botón de intercambio de vista

Más detalles

Protocolos de WWW. Bibliografía: Redes de Computadores: un enfoque descendente basado en Internet : J.F Kurose y K.W. Ross. GSyC 2007.

Protocolos de WWW. Bibliografía: Redes de Computadores: un enfoque descendente basado en Internet : J.F Kurose y K.W. Ross. GSyC 2007. HTTP Para realizar este material se han utilizado algunas transparencias proporcionadas junto con el libro Redes de Computadores: un enfoque descendente basado en Internet : Copyright 1996-2002. J.F Kurose

Más detalles

ESB NORMATIVA DE DESARROLLO DE PROYECTOS

ESB NORMATIVA DE DESARROLLO DE PROYECTOS ESB NORMATIVA DE DESARROLLO DE PROYECTOS Versión 1.0 Área de Integración y Arquitectura de Aplicaciones Versión 1.0 Área de Aplicaciones Especiales y Arquitectura de Software Hoja de Control Título Normativa

Más detalles

Manual de integración con el TPV Virtual para comercios con conexión por Redirección

Manual de integración con el TPV Virtual para comercios con conexión por Redirección Manual de integración con el TPV Virtual para comercios con conexión por Redirección Versión: 1.6 Versión: 1.6 i Autorizaciones y control de versión Versión Fecha Afecta Breve descripción del cambio 1.0

Más detalles

Servicios pensados para optimizar los procesos de comunicación de voz y SMS.

Servicios pensados para optimizar los procesos de comunicación de voz y SMS. Checker de teléfono Servicios pensados para optimizar los procesos de comunicación de voz y SMS. Aspectos generales Basados en una aplicación de la tecnología ENUM. La ENUM API permite acceder a los servicios

Más detalles

Capítulo 7: Introducción a la dinámica de servicios Web

Capítulo 7: Introducción a la dinámica de servicios Web Servicios Web Capítulo 7: Introducción a la dinámica de servicios Web Pedro J. Álvarez alvaper@unizar.es José Ángel Bañares banares@unizar.es http://diis.unizar.es/postweb/ Departamento de Informática

Más detalles

Tema 1: Introducción a las tecnologías

Tema 1: Introducción a las tecnologías Tema 1: Introducción a las tecnologías de integración de aplicaciones Índice Introducción Integración de Aplicaciones Arquitectura de referencia Capa de Integración de Plataforma Capa de Acceso e Integración

Más detalles

Servicios Web. Andrés Pastorini. TRIA Tecnólogo Informático

Servicios Web. Andrés Pastorini. TRIA Tecnólogo Informático Andrés Pastorini TRIA Tecnólogo Informático Un servicio web expone un conjunto de servicios para ser consumidos a través de la red. En otras palabras, un servicio web especifica un conjunto de operación(funciones

Más detalles

Introducción a las Redes de Computadoras

Introducción a las Redes de Computadoras Introducción a las Redes de Computadoras Capitulo 2 Capa de Aplicación Nota acerca de las transparencias del curso: Estas transparencias están basadas en el sitio web que acompaña el libro, y han sido

Más detalles

Web Tier en JAVA. Nicolás Troncoso Carrère. Valparaíso, 2006. ILI 258 Departamento de Informática Universidad Técnica Federico Santa María

Web Tier en JAVA. Nicolás Troncoso Carrère. Valparaíso, 2006. ILI 258 Departamento de Informática Universidad Técnica Federico Santa María Nicolás Troncoso Carrère ILI 258 Departamento de Informática Universidad Técnica Federico Santa María Valparaíso, 2006 1 2 3 Porqué paginas dinamicas? Confirmacion de suscripciones. Contenido generado

Más detalles

Sistemas Distribuidos Basados en la WEB

Sistemas Distribuidos Basados en la WEB Sistemas Distribuidos Basados en la WEB Andrew Tanembaum M. L. Liu Contenido Introducción Lenguajes: HTML, XML El Protocolo: HTTP Contenido Web Generado en Forma Dinámica: CGI Sesiones Web y datos de estado

Más detalles

Tutorial Servicios Web

Tutorial Servicios Web Tutorial Servicios Web 1. Servicios Web con REST Como ya hemos usado SOAP para WebService, podemos afirmar que es bien fácil de diseñar, pero algo complicado de consumir: se necesita toda una API para

Más detalles

PUBLICACIÓN DE SERVICIOS WEB(SW) EN EL BUS DE SERVICIOS GUBERNAMENTALES (BSG)

PUBLICACIÓN DE SERVICIOS WEB(SW) EN EL BUS DE SERVICIOS GUBERNAMENTALES (BSG) SECRETARÍA NACIONAL DE LA ADMINISTRACIÓN PÚBLICA Manual de Procedimiento PUBLICACIÓN DE SERVICIOS WEB(SW) EN EL BUS DE SERVICIOS GUBERNAMENTALES (BSG) Versión: 1.0 ENERO 2014 QUITO - ECUADOR ÍNDICE 1 INTRODUCCIÓN

Más detalles

Servlets. Seminario de Programacion Rafael Vázquez Pérez

Servlets. Seminario de Programacion Rafael Vázquez Pérez Servlets Seminario de Programacion Rafael Vázquez Pérez Que son los Servlets de Java? Los Servlets son las respuesta de la tecnología Java a la programación CGI. Son programas que se ejecutan en un servidor

Más detalles

DESARROLLO WEB EN ENTORNO SERVIDOR

DESARROLLO WEB EN ENTORNO SERVIDOR DESARROLLO WEB EN ENTORNO SERVIDOR CAPÍTULO 7: Programación de servicios Web Marcos López Sanz Juan Manuel Vara Mesa Jenifer Verde Marín Diana Marcela Sánchez Fúquene Jesús Javier Jiménez Hernández Valeria

Más detalles

Objetivo de aprendizaje del tema

Objetivo de aprendizaje del tema Computación II Tema 13. Servlets Objetivo de aprendizaje del tema Al finalizar el tema serás capaz de: Describir las características ti de las aplicaciones i Web y los protocolos que intervienen en la

Más detalles

Introducción a las Aplicaciones Web

Introducción a las Aplicaciones Web Departamento de Lenguajes y Sistemas Informáticos Arquitectura e Integración de Sistemas Software Introducción a las Aplicaciones Web Tema 1 Arquitectura e Integración de Sistemas Software Curso 2012/2013

Más detalles

Google Cloud EndPoints (Parte I)

Google Cloud EndPoints (Parte I) 1 Google Cloud EndPoints (Parte I) 1. Google cloud platform: Google Cloud EndPoints 1. 1. Qué es Google Cloud Platform? 2. Google Cloud EndPoints. 2.1 Precios. 2.2. Instalación. 2.3. Crear la aplicación

Más detalles

Tema 6: Comparativa CORBA/Servicios Web

Tema 6: Comparativa CORBA/Servicios Web Tema 6: Comparativa CORBA/Servicios Web Introducción Para establecer una comparativa, es preciso tener en cuenta CORBA se introdujo en 1991 y Servicios Web en el 2000 CORBA es una solución más madura y

Más detalles

Sistema de gestión de tareas y proyectos

Sistema de gestión de tareas y proyectos Sistema de gestión de tareas y proyectos Propuesta de proyecto Seminario de Informática I Luis Muñoz Enrique Viard Contenido Introducción... 3 Descripción general... 3 Arquitectura propuesta... 5 Requisitos...

Más detalles

WWW (HTTP PROXY - CACHING)

WWW (HTTP PROXY - CACHING) WWW (HTTP PROXY - CACHING) Integrantes : Calderón, Ingrid Coronel, Luis Junco, Sebastián Marx, Martín HTTP Protocolo de transferencia de hipertexto HTTP - Introducción El protocolo HTTP define la sintaxis

Más detalles

Título: Optimización de Procesos de Negocio con SOA / BPM Nombre y Apellido: Mario Bolo Email: bolo@ar.ibm.com Fecha: 15/08/2012

Título: Optimización de Procesos de Negocio con SOA / BPM Nombre y Apellido: Mario Bolo Email: bolo@ar.ibm.com Fecha: 15/08/2012 Título: Optimización de Procesos de Negocio con SOA / BPM Nombre y Apellido: Mario Bolo Email: bolo@ar.ibm.com Fecha: 15/08/2012 El problema: las aplicaciones tradicionales no le proveen la agilidad necesaria

Más detalles

INTERCAMBIO DE OBJETOS

INTERCAMBIO DE OBJETOS Departament d Arquitectura de Computadors INTERCAMBIO DE OBJETOS HTTP: Hypertext Transfer Protocol Protocolo de comunicaciones estandarizado que comunica servidores, proxies-cachés y clientes. Permite

Más detalles

Introducción. http://www.microsoft.com/spanish/msdn/comunidad/mtj.net/voices/art143.asp - Gráfica tomada del Artículo de José David Parra

Introducción. http://www.microsoft.com/spanish/msdn/comunidad/mtj.net/voices/art143.asp - Gráfica tomada del Artículo de José David Parra Si en otros tiempos el factor decisivo de la producción era la tierra y luego lo fue el capital... hoy día el factor decisivo es cada vez más el hombre mismo, es decir, su conocimiento... Juan Pablo II

Más detalles

Curso 5007437. Capítulo 4: Arquitectura Orientada a Servicios. Conceptos y estándares de arquitecturas orientadas a servicios Web Curso 2006/2007

Curso 5007437. Capítulo 4: Arquitectura Orientada a Servicios. Conceptos y estándares de arquitecturas orientadas a servicios Web Curso 2006/2007 Curso 5007437 Conceptos y estándares de arquitecturas orientadas a servicios Web Curso 2006/2007 Capítulo 4: Arquitectura Orientada a Servicios Pedro Álvarez alvaper@unizar.es José Ángel Bañares banares@unizar.es

Más detalles

Aplicaciones y Servicios en Redes

Aplicaciones y Servicios en Redes Aplicaciones y Servicios en Redes Tema 04. Aplicaciones y Servicios Móviles Alberto Eloy García Gu?érrez Luis Sánchez González DPTO. DE INGENIERÍA DE COMUNICACIONES Este tema se publica bajo Licencia:

Más detalles

Práctica 5: Servidor web concurrente en Java

Práctica 5: Servidor web concurrente en Java Práctica 5: Servidor web concurrente en Java Esta práctica pretende familiarizar al alumno con la programación de servidores que emplean sockets TCP. Para ello partiremos del servidor web básico visto

Más detalles

Construir RIA usando Flex. Eduardo Ostertag Jenkins, Ph.D. OBCOM INGENIERIA S.A. Eduardo.Ostertag@obcom.cl

Construir RIA usando Flex. Eduardo Ostertag Jenkins, Ph.D. OBCOM INGENIERIA S.A. Eduardo.Ostertag@obcom.cl Construir RIA usando Flex Eduardo Ostertag Jenkins, Ph.D. OBCOM INGENIERIA S.A. Eduardo.Ostertag@obcom.cl Temario Arquitectura de un aplicación RIA Flex Servicios Web en VB.NET, C# y Java Descriptor WSDL

Más detalles

Realización CU62: Registrar cuadrilla

Realización CU62: Registrar cuadrilla Realización CU62: Registrar cuadrilla Clases intervinientes 67 Diagrama de secuencia 68 Realización CU64: Modificar cuadrilla Clases intervinientes 69 Diagrama de secuencia 70 Realización CU61: Consultar

Más detalles

SQUID PROXY CACHES. Objetivos

SQUID PROXY CACHES. Objetivos SQUID PROXY CACHES Objetivos Instalar un Proxy-Cache (SQUID) y comprender su funcionamiento. Se usaran diversas posibilidades que admite este programa como son la restricción de accesos a determinadas

Más detalles

MWEB 2007 Acceso Dinámico a Servicios de una Infraestructura Web desde Teléfonos Móviles

MWEB 2007 Acceso Dinámico a Servicios de una Infraestructura Web desde Teléfonos Móviles MWEB 2007 Acceso Dinámico a Servicios de una Infraestructura Web desde Teléfonos Móviles Elena Sánchez Nielsen Sandra Martín Ruiz Jorge Rodríguez Pedrianes UNIVERSIDAD DE LA LAGUNA CONTENIDO DE LA PRESENTACIÓN

Más detalles

Testing de Seguridad de Aplicaciones Web

Testing de Seguridad de Aplicaciones Web Testing de Seguridad de Aplicaciones Web Julio C. Ardita, CISM. jardita@cybsec.com 16 de Noviembre de 2013 Coatzacoalcos - MEXICO Temario - Protocolo HTTP - Herramientas de Testing Web. - Vulnerabilidades

Más detalles

Un servlet es una clase java que implementa la Servlet interface. Un servlet corre dentro de un contexto denominado Servlet engine.

Un servlet es una clase java que implementa la Servlet interface. Un servlet corre dentro de un contexto denominado Servlet engine. Capítulo 6 Servlets En esta sección se va a tratar el primer componente que corre del lado del servidor, y es uno de los puntos fundamentales para la comunicación entre el cliente (browser) y el servidor.

Más detalles

Clase 22 Nivel de Aplicación WWW Tema 6.- Nivel de aplicación en Internet

Clase 22 Nivel de Aplicación WWW Tema 6.- Nivel de aplicación en Internet Clase 22 Nivel de Aplicación WWW Tema 6.- Nivel de aplicación en Internet Dr. Daniel Morató Redes de Computadores Ingeniero Técnico de Telecomunicación Especialidad en Sonido e Imagen 3º curso Temario

Más detalles