SlideShare una empresa de Scribd logo
1 de 38
Ruby y las arquitecturas orientadas a servicios (SOA)  Joaqu ín Salvachúa Dit UPM [email_address]
RAILS Y SOAP ¿Tranquilidad?
RAILS ,[object Object],[object Object],[object Object],[object Object]
¿cómo integrar aplicaciones distribuidas?
 
USO de “SOCKETS”
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Necesidad de un protocolo estandard ,[object Object],[object Object],[object Object],[object Object]
Modelo de Llamada Remota a Procedimiento (RPC) int fxx (int a)  { return a * 5; }  10 25 10 25 x = 5; y = fxx (x); z = y +1; .... SEND RECV
XML-RPC
Ejemplo ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Filosofia REST ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Aspectos de diseño ,[object Object],Recursos URLs Op. Simples
Web Services ¿Qué es un servicio Web? Un servicio Web es una aplicación Web identificada por un URI, cuyos interfaces y enlaces pueden ser definidos, descritos y descubiertos mediante artefactos XML y que soporta la interacción directa con otras aplicaciones Web que  interfaz que define una colección de operaciones que son accesibles de forma remota  usando mensajes XML mediante protocolos estándar de Internet.
Screen Scrape Screen Scrape Screen Scrape Screen Scrape Message Queue Message Queue Message Queue Download File Download File Download File Transaction File Transaction File Transaction File ORB ORB CICS Gateway CICS Gateway APPC APPC RPC RPC Transaction File Sockets Sockets Message Message Application Application Application Application Application Application Application Application Application Application
Arquitectura orientada a servicios I Service Registry Service Provider Service Requestor Find Publish Bind (HTTP)
Arquitectura orientada a servicios II Service Registry Service Provider Service Requestor Find Publish Bind (to protocol) UDDI SOAP / XML WSDL
Tecnologías Usadas ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
XML – Describe estructuras de datos ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
SOAP ,[object Object],[object Object]
Estructura de SOAP ,[object Object],[object Object],[object Object],[object Object],[object Object]
Estructura de SOAP ,[object Object],[object Object],[object Object],HTTP SOAP SOAP Body
SOAP como protocolo ,[object Object],SOAP Envelope XML Framework SOAP Encoding SOAP RPC SOAP Messaging Authentication Encryption BTF2.0 Attachments
Modelos de procesado de Servicios Web Básicamente Asíncrono Básicamente Síncrono Tipo de interacción. Centrado en Documento Centrado en objetos de negocio Modelo de procesado RPC + XML attachment RPC Modelo de interacción Orientado a  documento Orientado a  RPC Servicio Web
WSDL ( Web Services Description Language) ,[object Object],[object Object],[object Object],[object Object],[object Object]
Funcionamiento ,[object Object],[object Object],[object Object],[object Object],[object Object]
Funcionamiento ,[object Object],[object Object],[object Object],[object Object],[object Object],Petición SOAP: <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <soap:Envelope …> <soap:Body> <MakeEncRequest …> <principal>adg@microsoft.com</principal> <cipher>+oXHdaCXvK…=</cipher> </MakeEncRequest> </soap:Body> </soap:Envelope>
Funcionamiento ,[object Object],[object Object],[object Object],[object Object],[object Object],Petición SOAP: <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <soap:Envelope …> <soap:Body> <MakeEncRequest …> <principal>adg@microsoft.com</principal> <cipher>+oXHdaCXvK…=</cipher> </MakeEncRequest> </soap:Body> </soap:Envelope> Respuesta SOAP: <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <soap:Envelope …> <soap:Body> <MakeEncRequestResponse …> <MakeEncRequestResult> Accepted: with nonce=1 </MakeEncRequestResult> </MakeEncRequestResponse> </soap:Body> </soap:Envelope>
Funcionamiento ,[object Object],[object Object],[object Object],[object Object],[object Object],Petición SOAP: <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <soap:Envelope …> <soap:Body> <MakeEncRequest …> <principal>adg@microsoft.com</principal> <cipher>+oXHdaCXvK…=</cipher> </MakeEncRequest> </soap:Body> </soap:Envelope> Respuesta SOAP: <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <soap:Envelope …> <soap:Body> <MakeEncRequestResponse …> <MakeEncRequestResult> Accepted: with nonce=1 </MakeEncRequestResult> </MakeEncRequestResponse> </soap:Body> </soap:Envelope> Descripción Interfaz WSDL : …  <s:element name=&quot;MakeEncRequest&quot;> <s:complexType> <s:sequence> <s:element … name=&quot;principal&quot; type=&quot;s:string&quot; /> <s:element … name=&quot;cipher&quot; type=&quot;s:base64Binary&quot; /> </s:sequence> </s:complexType> </s:element> …
UDDI  ( Universal Description Discovery and Integration) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Las nuevas especificaciones Web Services ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Todo esto nuevo queda fuera de RUBY - The Message Model ,[object Object]
SOAP4R ,[object Object],[object Object],[object Object],[object Object]
Seguridad WS no integrada
En desarrollo  ,[object Object],[object Object]
VERSION ACTUAL ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
SOAP Aun no integrado ,[object Object],[object Object],[object Object],[object Object]
Conclusiones ,[object Object],[object Object],[object Object]

Más contenido relacionado

La actualidad más candente

Sun Java System Web Server 6.1
Sun Java System Web Server 6.1Sun Java System Web Server 6.1
Sun Java System Web Server 6.1
Oliver Centeno
 
Diapositiva servidor web
Diapositiva servidor webDiapositiva servidor web
Diapositiva servidor web
coronadoinfante
 
Programacion web java
Programacion web javaProgramacion web java
Programacion web java
César Ocampo
 
Servidores web
Servidores webServidores web
Servidores web
Sam Meci
 
Html,php
Html,phpHtml,php
Html,php
softyed
 
Servicios web java php-perl-google
Servicios web java php-perl-googleServicios web java php-perl-google
Servicios web java php-perl-google
Josue Hernandez
 

La actualidad más candente (20)

servidores web
servidores webservidores web
servidores web
 
Tutorial - REST con java (JAX-RS 2.0)
Tutorial - REST con java (JAX-RS 2.0)Tutorial - REST con java (JAX-RS 2.0)
Tutorial - REST con java (JAX-RS 2.0)
 
Sun Java System Web Server 6.1
Sun Java System Web Server 6.1Sun Java System Web Server 6.1
Sun Java System Web Server 6.1
 
Desarrollando un API con REST
Desarrollando un API con RESTDesarrollando un API con REST
Desarrollando un API con REST
 
Java Primeros Pasos Revista- Edición 2
Java Primeros Pasos Revista- Edición 2Java Primeros Pasos Revista- Edición 2
Java Primeros Pasos Revista- Edición 2
 
Desarrollando Una Mejor Experiencia De Usuario Con Ajax
Desarrollando Una Mejor Experiencia De Usuario Con AjaxDesarrollando Una Mejor Experiencia De Usuario Con Ajax
Desarrollando Una Mejor Experiencia De Usuario Con Ajax
 
Entrada 11 del blog
Entrada 11 del blogEntrada 11 del blog
Entrada 11 del blog
 
Diapositiva servidor web
Diapositiva servidor webDiapositiva servidor web
Diapositiva servidor web
 
Servicios web
Servicios webServicios web
Servicios web
 
Arquitectura REST
Arquitectura RESTArquitectura REST
Arquitectura REST
 
Tutorial Web Services en PHP, REST, SOAP
Tutorial Web Services en PHP, REST, SOAPTutorial Web Services en PHP, REST, SOAP
Tutorial Web Services en PHP, REST, SOAP
 
Clientes web
Clientes webClientes web
Clientes web
 
Trabajo de investigacion
Trabajo de investigacionTrabajo de investigacion
Trabajo de investigacion
 
Programacion web java
Programacion web javaProgramacion web java
Programacion web java
 
Servidores web
Servidores webServidores web
Servidores web
 
Html,php
Html,phpHtml,php
Html,php
 
Servicios web java php-perl-google
Servicios web java php-perl-googleServicios web java php-perl-google
Servicios web java php-perl-google
 
Real time
Real timeReal time
Real time
 
Servidor web
Servidor webServidor web
Servidor web
 
ASP.NET
ASP.NETASP.NET
ASP.NET
 

Similar a Ruby y las arquitecturas orientadas a servicios

SOAP y Web Services
SOAP y Web ServicesSOAP y Web Services
SOAP y Web Services
edmodi
 
Charla Web Services
Charla Web ServicesCharla Web Services
Charla Web Services
Jose Selman
 
Servicios web
Servicios webServicios web
Servicios web
itoomac02
 
Servicios web
Servicios webServicios web
Servicios web
itoomac02
 

Similar a Ruby y las arquitecturas orientadas a servicios (20)

SOAP y Web Services
SOAP y Web ServicesSOAP y Web Services
SOAP y Web Services
 
Pdfwebservices
PdfwebservicesPdfwebservices
Pdfwebservices
 
Charla Web Services
Charla Web ServicesCharla Web Services
Charla Web Services
 
Servicios Web II.ppt
Servicios Web II.pptServicios Web II.ppt
Servicios Web II.ppt
 
Servicios web Extendido_error perl
Servicios web Extendido_error perlServicios web Extendido_error perl
Servicios web Extendido_error perl
 
Webservices
WebservicesWebservices
Webservices
 
Integración de Tecnologías y Plataformas.pptx
Integración de Tecnologías y Plataformas.pptxIntegración de Tecnologías y Plataformas.pptx
Integración de Tecnologías y Plataformas.pptx
 
Servicios web
Servicios webServicios web
Servicios web
 
Servicios web
Servicios webServicios web
Servicios web
 
Servicios web
Servicios webServicios web
Servicios web
 
Presentacion ws
Presentacion wsPresentacion ws
Presentacion ws
 
01 Ext Js Introduccion
01 Ext Js   Introduccion01 Ext Js   Introduccion
01 Ext Js Introduccion
 
Web services-con-php
Web services-con-phpWeb services-con-php
Web services-con-php
 
Tema 3 0
Tema 3 0Tema 3 0
Tema 3 0
 
Tema 3 0
Tema 3 0Tema 3 0
Tema 3 0
 
Web services SOAP con JAX-WS
Web services SOAP con JAX-WSWeb services SOAP con JAX-WS
Web services SOAP con JAX-WS
 
Java2 servicios web
Java2 servicios webJava2 servicios web
Java2 servicios web
 
Arquitectura-orientada-a-Servicios.-v-2017.01-Prof.-L.-Straccia.pptx
Arquitectura-orientada-a-Servicios.-v-2017.01-Prof.-L.-Straccia.pptxArquitectura-orientada-a-Servicios.-v-2017.01-Prof.-L.-Straccia.pptx
Arquitectura-orientada-a-Servicios.-v-2017.01-Prof.-L.-Straccia.pptx
 
Servicios web
Servicios webServicios web
Servicios web
 
Servicios web
Servicios webServicios web
Servicios web
 

Más de Joaquín Salvachúa

Big data Jornada Fundación Ramón Areces
Big data Jornada Fundación Ramón ArecesBig data Jornada Fundación Ramón Areces
Big data Jornada Fundación Ramón Areces
Joaquín Salvachúa
 

Más de Joaquín Salvachúa (20)

Eemov data
Eemov dataEemov data
Eemov data
 
Etica big data
Etica big dataEtica big data
Etica big data
 
FIWARE Data usage control
FIWARE Data usage controlFIWARE Data usage control
FIWARE Data usage control
 
Fiware overview3
Fiware overview3Fiware overview3
Fiware overview3
 
Fiware overview
Fiware overviewFiware overview
Fiware overview
 
Kubernetes2
Kubernetes2Kubernetes2
Kubernetes2
 
Introducción al ecosistema de React.js
Introducción al ecosistema de React.jsIntroducción al ecosistema de React.js
Introducción al ecosistema de React.js
 
FIWARE Identity Manager Exercises
FIWARE Identity Manager ExercisesFIWARE Identity Manager Exercises
FIWARE Identity Manager Exercises
 
FIware Identity Manager
FIware Identity ManagerFIware Identity Manager
FIware Identity Manager
 
Fi ware en Hack for good (#H4G)
Fi ware en Hack for good  (#H4G) Fi ware en Hack for good  (#H4G)
Fi ware en Hack for good (#H4G)
 
Id fiware upm-dit
Id fiware  upm-ditId fiware  upm-dit
Id fiware upm-dit
 
Vagrant
VagrantVagrant
Vagrant
 
Big data Jornada Fundación Ramón Areces
Big data Jornada Fundación Ramón ArecesBig data Jornada Fundación Ramón Areces
Big data Jornada Fundación Ramón Areces
 
Intro20 socioeconomia
Intro20 socioeconomiaIntro20 socioeconomia
Intro20 socioeconomia
 
Master w20 01
Master w20 01Master w20 01
Master w20 01
 
Blogs micro
Blogs microBlogs micro
Blogs micro
 
Social networks upm
Social networks upmSocial networks upm
Social networks upm
 
Nube redes
Nube redesNube redes
Nube redes
 
Identidad2
Identidad2Identidad2
Identidad2
 
Blogs Micro
Blogs MicroBlogs Micro
Blogs Micro
 

Último

Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 

Último (11)

EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 

Ruby y las arquitecturas orientadas a servicios

  • 1. Ruby y las arquitecturas orientadas a servicios (SOA) Joaqu ín Salvachúa Dit UPM [email_address]
  • 2. RAILS Y SOAP ¿Tranquilidad?
  • 3.
  • 5.  
  • 7.
  • 8.
  • 9. Modelo de Llamada Remota a Procedimiento (RPC) int fxx (int a) { return a * 5; } 10 25 10 25 x = 5; y = fxx (x); z = y +1; .... SEND RECV
  • 11.
  • 12.
  • 13.
  • 14. Web Services ¿Qué es un servicio Web? Un servicio Web es una aplicación Web identificada por un URI, cuyos interfaces y enlaces pueden ser definidos, descritos y descubiertos mediante artefactos XML y que soporta la interacción directa con otras aplicaciones Web que interfaz que define una colección de operaciones que son accesibles de forma remota usando mensajes XML mediante protocolos estándar de Internet.
  • 15. Screen Scrape Screen Scrape Screen Scrape Screen Scrape Message Queue Message Queue Message Queue Download File Download File Download File Transaction File Transaction File Transaction File ORB ORB CICS Gateway CICS Gateway APPC APPC RPC RPC Transaction File Sockets Sockets Message Message Application Application Application Application Application Application Application Application Application Application
  • 16. Arquitectura orientada a servicios I Service Registry Service Provider Service Requestor Find Publish Bind (HTTP)
  • 17. Arquitectura orientada a servicios II Service Registry Service Provider Service Requestor Find Publish Bind (to protocol) UDDI SOAP / XML WSDL
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24. Modelos de procesado de Servicios Web Básicamente Asíncrono Básicamente Síncrono Tipo de interacción. Centrado en Documento Centrado en objetos de negocio Modelo de procesado RPC + XML attachment RPC Modelo de interacción Orientado a documento Orientado a RPC Servicio Web
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34. Seguridad WS no integrada
  • 35.
  • 36.
  • 37.
  • 38.