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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

(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

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

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

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

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

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

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

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

Sistemas de Caché. Para mejorar la velocidad de carga de una web. papers. acens

Sistemas de Caché. Para mejorar la velocidad de carga de una web. papers. acens Sistemas de Caché Para mejorar la velocidad de carga de una web Calle San Rafael, 14 28108 Alcobendas (Madrid) 902 90 10 20 www..com Introducción Llega el momento en la vida de un sitio web que debido

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

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

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

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

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

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

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

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

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

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

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

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

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 1. Arquitectura Cliente/Servidor

Tema 1. Arquitectura Cliente/Servidor Tema 1. Arquitectura Cliente/Servidor SCS Sistemas Cliente/Servidor 4 o informática http://ccia.ei.uvigo.es/docencia/scs 27 de septiembre de 2009 FJRP, FMBR [sistemas cliente-servidor] CCIA 1.1 Sistemas

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

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

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

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

Sesión 20. MVC en ruby on rails. Luisa Fernanda Rincón Pérez 2015-1

Sesión 20. MVC en ruby on rails. Luisa Fernanda Rincón Pérez 2015-1 Sesión 20. MVC en ruby on rails Luisa Fernanda Rincón Pérez 2015-1 Cómo aplica Ruby on rails MVC? MODELO en Ruby on rails Cómo aplica Ruby on rails MVC? Modelo Representan tablas de la base de datos Las

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

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

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

DESARROLLO WEB EN ENTORNO SERVIDOR

DESARROLLO WEB EN ENTORNO SERVIDOR DESARROLLO WEB EN ENTORNO SERVIDOR CAPÍTULO 9: Desarrollo de aplicaciones Web híbridas 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

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

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

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

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

Arquitectura de Aplicaciones Empresariales. Lic. Esteban Cesar Calabria

Arquitectura de Aplicaciones Empresariales. Lic. Esteban Cesar Calabria Arquitectura de Aplicaciones Empresariales Aplicaciones empresariales Temario Aplicaciones Empresariales Arquitectura Aplicaciones Empresariales Layering Negocio Persistencia Presentación Ejemplos Aplicaciones

Más detalles

SERVIDOR WEB MULTIPLATAFORMA CON IMPLEMENTACIÓN CGI

SERVIDOR WEB MULTIPLATAFORMA CON IMPLEMENTACIÓN CGI SERVIDOR WEB MULTIPLATAFORMA CON IMPLEMENTACIÓN CGI C.U. Loraine E. Gimson Saravia a, C.U. Julián J. Fernández b L.I.D.T.I. Universidad Nacional de Salta. Facultad de Ciencias Exactas a E-Mail: saraviag@unsa.edu.ar

Más detalles

IVista: es la interfaz con la que el Presentador se comunica con la vista.

IVista: es la interfaz con la que el Presentador se comunica con la vista. Capítulo 3 MODELO DE DISEÑO 3.1 Arquitectura Modelo-Vista-Presentador La arquitectura Modelo-Vista-Presentador (MVP) [11] separa el modelo, la presentación y las acciones basadas en la interacción con

Más detalles

Tema 4 El paradigma cliente-servidor

Tema 4 El paradigma cliente-servidor Tema 4 El paradigma cliente-servidor F. García-Carballeira, Mª. Soledad Escolar, Luis Miguel Sánchez, Fco. Javier García Sistemas Distribuidos Grado en Ingeniería Informática Universidad Carlos III de

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

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

Diplomado Java. Descripción. Objetivo. A quien está dirigido. Requisitos. Beneficios

Diplomado Java. Descripción. Objetivo. A quien está dirigido. Requisitos. Beneficios Diplomado Java Descripción El lenguaje de programación Java es uno de los más utilizados hoy en día. Su potencia, simplicidad, funcionalidad y capacidad hacen que este lenguaje sea una de las herramientas

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

Programación de red con Cisco Application Centric Infrastructure

Programación de red con Cisco Application Centric Infrastructure Informe técnico Programación de red con Cisco Application Centric Infrastructure Descripción general En este documento se examina la compatibilidad de la programación de Cisco Application Centric Infrastructure

Más detalles

Automatizacion de Pruebas de Integración en Arquitecturas Orientadas a Servicios

Automatizacion de Pruebas de Integración en Arquitecturas Orientadas a Servicios Automatizacion de Pruebas de Integración en Arquitecturas Orientadas a Servicios Lic. Facundo Chambó, Mg. Patricia Bazán, Lic. Juan Ramón Cortabitarte Universidad Nacional de la Plata, Facultad de Informática

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

Arquitectura de Aplicaciones Empresariales. Lic. Esteban Cesar Calabria 2007

Arquitectura de Aplicaciones Empresariales. Lic. Esteban Cesar Calabria 2007 Arquitectura de Aplicaciones Empresariales 2007 TEMARIO Introducción Aplicaciones Empresariales Introducción a la Arquitectura de Aplicaciones empresariales Layering Patrones Arquitecturas Empresariales

Más detalles

Comunicación entre procesos

Comunicación entre procesos Comunicación entre procesos Patrones de comunicación Comunicación cliente-servidor En la que los mensajes de petición y respuesta proporcionan la base para la invocación remota de métodos o de procedimientos.

Más detalles

IT 4148: Gestión de Sistemas en. Práctica I Departamento de Ingeniería Informática

IT 4148: Gestión de Sistemas en. Práctica I Departamento de Ingeniería Informática Pág: 1 de 5 DEPARTAMENTO DE INGENIERÍA INFORMÁTICA (DII): IT 4148: Gestión de Sistemas en Internet : Creación de un Servidor Web HTTP1.1-compliant (Curso 2002/03) Pág: 2 de 5 Contenido 1. Introducción

Más detalles

Web Services en Java. Taller de Programación. Instituto de Computación Facultad de Ingeniería Universidad de la República

Web Services en Java. Taller de Programación. Instituto de Computación Facultad de Ingeniería Universidad de la República Web Services en Java Taller de Programación Instituto de Computación Facultad de Ingeniería Universidad de la República Contenido Motivación y Conceptos Funcionamiento Annotations Desarrollando una aplicación

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

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

TEMARIO. 4-Servlet Definición de servlet El Web Container y el ciclo de vida de los servlets El ciclo request- response.

TEMARIO. 4-Servlet Definición de servlet El Web Container y el ciclo de vida de los servlets El ciclo request- response. TEMARIO 1-Introducción Entorno de Desarrollo Integrado ( que es, para que nos sirve, distintos tipos) Presentación del Netbeans (descarga, instalación, aspectos fundamentales.) Principales Servidores de

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

ATLAS MANUAL DE INTEGRACIÓN Cliente del Servicio de SMS

ATLAS MANUAL DE INTEGRACIÓN Cliente del Servicio de SMS ATLAS MANUAL DE INTEGRACIÓN Cliente del Servicio de SMS Versión 1.0 Arquitectura de Software Hoja de Control Título Documento de Referencia Responsable Servicio de SMS Cliente NORMATIVA ATLAS Arquitectura

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 10 Diego C. Martínez Departamento de Ciencias e Ing geniería de la Computación Universidad Nacional del Sur AJAX AJAX es un término familiar en otros conte extos...

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

Apéndice 1. SOAP 2 2. CORBA 4 3. JMS 6 4. RMI 8

Apéndice 1. SOAP 2 2. CORBA 4 3. JMS 6 4. RMI 8 Apéndice A Conectividad 1. OAP 2 2. CORBA 4 3. JM 6 4. RMI 8 OAP OAP (imple Object Access Protocol) es un protocolo basado en XML que permite comunicar componentes y aplicaciones mediante HTTP. Es como

Más detalles