SlideShare una empresa de Scribd logo
Facultad de Ciencias Informáticas
Desarrollo de Aplicaciones Web
Unidad 3 Arquitectura orientada a
microservicios web y manejo de estados
PhD(c). Luis Fernando Aguas Bucheli
+593 984015184
@Aguaszoft
luis.aguas@utm.edu.ec
Objetivos de Desarrollo Sostenible
Meta
4.7 De aquí a 2030, asegurar que todos los alumnos adquieran
los conocimientos teóricos y prácticos necesarios para promover
el desarrollo sostenible, entre otras cosas mediante la educación
para el desarrollo sostenible y los estilos de vida sostenibles, los
derechos humanos, la igualdad de género, la promoción de una
cultura de paz y no violencia, la ciudadanía mundial y la
valoración de la diversidad cultural y la contribución de la cultura
al desarrollo sostenible
Nuestra mayor gloria no es no caer nunca, sino
levantarnos cada vez que caemos
Resultado de Aprendizaje
• Diseñar un producto de
software en el que se
apliquen principios de
diseño, para que sea
robusto, fácil de mantener
y modificar
Contenido
• Unidad 3 Arquitectura
orientada a microservicios web
y manejo de estados
• 3.1 Arquitectura orientada a
servicios
• 3.1.1 Manifiesto SOA
• 3.1.2 Servicios web
Introducción (I)
5
Aplicaciones prácticas de las arquitecturas orientadas al
servicio
• Nuevas aplicaciones, nuevas necesidades, nuevos
contextos
• “Más del 80% de las “Fortune 500” modificaron su modelo de negocios en los
últimos 2 años. Dos tercios de éstos informaron que los cambios en su negocio
estuvieron restringidos por tecnología inflexible”
Service Oriented Architecture: An Introduction for Managers” CBDI Forum
• Cambios en el negocio del desarrollo de aplicaciones. “Entre 2005 y 2008, más
del 80% de los proyectos de desarrollo se basarán en SOA (0.8 Prob.)”
Service-Oriented Architectures Alter IT Services Market, Gartner
• Nos estan diciendo que la Flexibilidad en el Negocio llegará a ser más importante
que la Eficiencia Operacional...Es probable que estemos llegando a una nueva
edad en donde veamos la muerte de algunas formas de hacer negocios porque
no pudieron adaptarse lo suficientemente rápido
Bryan Glick, Global Future Forum. An Industry Think Tank
Introducción (II)
6
Aplicaciones prácticas de las arquitecturas orientadas al
servicio
• Problemática
• Necesidades derivadas de las concepciones de Web
2.0
• Mayor evolución en las nuevas líneas de negocio y
mayores dependencias con respecto a la tecnología
• Poca flexibilidad en el soporte al negocio
• Fuertes restricciones y dificultades para la realización de
cambios de negocio
• Ambientes distribución de aplicaciones heterogéneos
• Integración de los sistemas es una pesadilla
• Necesidad de reutilización de tecnologías e inversiones
Introducción (III)
• ¿Qué es una arquitectura?
• Arquitectura es la organización fundamental de un sistema descrita en
• Sus componentes
• Relación entre ellos y con el ambiente
• Principios que guían su diseño y evolución
IEEE 1471
• La arquitectura del software alude a la estructura global del software
y las formas en que esa estructura proporciona integridad conceptual
a un sistema [Shaw y Garlan, 1995]
• La arquitectura del software es la estructura lógica y física de un
sistema, forjada por todas las decisiones de diseño estratégicas y
tácticas aplicadas durante el desarrollo [Booch, 1994]
7
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
Introducción (IV)
• Evolución de las arquitecturas
Abstracción
Vertical Horizontal Ecosistema
8
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
Introducción (V)
• Propiedades de las arquitecturas
9
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
Introducción (VI)
• Un servicio es una funcionalidad construida como un
componente reusable para ser utilizado en un proceso de
negocio [Fagalde, 2006]
• El proceso utilizado para implementar un servicio no es importante,
siempre y cuando
• responda al requerimiento
• ofrezca la calidad de servicio deseada
• Desde la perspectiva de quien lo invoca, es visto como una
funcionalidad autocontenida
10
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
11
Introducción (VII)
• Un servicio encapsula su implementación
11
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
Introducción (VIII)
• Los servicios pueden componerse,
constituyendo los ”building blocks”,
pudiendo ser reusados para
desarrollar otras aplicaciones
• El enfoque está en sus interfaces en
lugar de los detalles de
implementación (partes
desacopladas)
• Los servicios son utilizados sin
depender de su ubicación, su
tecnología, o forma de invocación
12
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
¿Qué es SOA? (I)
• SOA no se deriva de una propuesta académica
• No hay technical reports de SOA en SEI
(Software Engineering Institute)
• Service-oriented architecture fue descrita por
primera vez por Gartner en 1996
• SSA Research Note SPA-401-068, 12 de abril,
“‘Service Oriented’ Architectures, Part 1” y SSA
Research Note SPA-401-069, 12 de abril, “‘Service
Oriented’ Architectures, Part 2”
13
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
• “Conjunto de componentes que pueden ser invocados, cuyas descripciones
de interfaces se pueden publicar y descubrir” [W3C, 2004]
• CBDI rechaza esa definición:
• Los componentes pueden no ser conjuntos
• La definición sólo considera los componentes y no la práctica o el arte
de construir la arquitectura
• “Estilo resultante de políticas, prácticas y frameworks que permiten
que la funcionalidad de una aplicación se pueda proveer y consumir
como conjuntos de servicios, con una granularidad relevante para el
consumidor. Los servicios pueden invocarse, publicarse y descubrirse y
están abstraídos de su implementación utilizando una sola forma
estándar de interface” [Sprott y Wilkies, 2004]
• Según OASIS, SOA es un paradigma para utilizar y organizar
funcionalidades distribuidas que pueden estar controladas por diferentes
propietarios de dominio. [OASIS, 2006]
¿Qué es SOA? (II)
14
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
Características de SOA (I)
15
15
Aplicaciones prácticas de las arquitecturas orientadas al
servicio
16
Características de SOA (II)
Ingreso  Nuevos mercados, canales y valor de sistemas existentes
Flexibilidad
 Soporte a modelos flexibles de Negocio habilitados por
servicios y tecnología- enfoque agnóstico
Velocidad
 Permite la reutilización de componentes prefabricados de
servicio para implementaciones rápidas
Eficacia
 Integra sistemas separados de distintas plataformas
 Automatiza procesos clave de negocios
 Los recursos trabajan para la misma estrategia de TI
Servicio  Ofrecer nuevos servicios a clientes y socios utilizando la
infraestructura de TI existente
Costo  Eliminar duplicidad de sistemas
Riesgo  Mejorar visibilidad de procesos de negocio
[Fagalde, 2006]
Aplicaciones prácticas de las arquitecturas orientadas al
servicio
17
Características de SOA (III)
Servicio Servicio Servicio
Servicio Servicio Servicio
Bus
• Servicios: Entidades lógicas - Contratos definidos por una o más
interfaces públicas
• Service provider: Entidad de software que implementa una
especificación de servicio
• Service consumer (o requestor): Entidad de software que llama a
un service provider. Tradicionalmente se lo llama “cliente”. Puede
ser una aplicación final u otro servicio
• Service locator: Tipo específico de service provider que actúa como
registry y permite buscar interfaces de service
providers y sus ubicaciones
• Service broker: Tipo específico de service
provider que puede pasar requisitos
de servicios a otros service providers
Características de SOA (IV)
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
18
• Implementaciones SOA
• WS no requiere despliegue
• WS no requiere clientes específicos ni drivers
• SOA se redefine como paso de mensajes, no RPC
• Diferentes opciones de implementación de WS
Características de SOA (y V)
DCOM CORBA JAVA RMI WS
Protocolo RPC RPC IIOP IIOP o JRMP SOAP
Formato
mensaje
NDR CDR Java
Serialization
Format
XML 1.0
Namespaces
Descripción IDL OMG IDL Java WSDL
Descubrimiento Registry Naming Service RMI Registry o
JNDI
UDDI
Marshalling Type Library
Marshaller
Serialization
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
19
• Web services: Diferentes definiciones en W3C Web Services
Architecture Working Group
• “Un servicio web es un sistema software diseñado para soportar interacción
entre nodos de una red. Consta de una interfaz descrita en un lenguaje
procesable por las máquinas (WSDL). Otros sistemas interacturán con el
servicio de la forma descrita en su descripción utilizando mensajes SOAP,
típicamente usando HTTP y en XML junto con otros protocolos web”
[W3C,2004]
• SOA es históricamente anterior (no por mucho)
• Un web service es SOA si:
• Las interfaces se basan en protocolos de web (HTTP, SMTP, FTP)
• A excepción de los attachments, los mensajes se basan en XML
• Dos estilos de web service: SOAP y REST
• REST es anti-RPC
• SOAP puede interpretarse en términos de mensajes o de RPC (Don Box)
Servicios Web y Protocolos (I)
20
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
Servicios Web y protocolos (II)
• Involucra
• Poder preguntar por descripciones
de WS que ofrece un sitio
• Definir formatos y ordenamiento
de los mensajes
• Formato para enviar y recibir datos
usando XML
• Uso de protocolos de internet abiertos
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
21
Protocolos
Internet
Abiertos
Web
Service
Lógica de aplicación encapsulada como un
componente en la Web para ser usada por
otros programas
UDDI
WSDL contract language
SOAP
XML,
HTTP, HTTPS
• CBDI:
• SOA es más amplio. Los web services son sólo una
interface programática en conformidad con los
protocolos WS-*
• Puede haber SOA sin WS (ej. REST)
• Los web services proporcionan independencia de
plataforma, bajo acoplamiento, auto-descripción y
descubrimiento
• Los web services no son parte obligatoria de SOA,
pero son una implementación adecuada
Servicios Web y Protocolos (II)
22
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
• Simple Object Access Protocol es el estándar de-facto para
interconexión
• Permite el intercambio de información estructurada y con tipos
entre entidades (peers) descentralizados
• Codificación y empaquetamiento basado en XML para
intercambiar datos, mensajes, RPCs
• SOAP proporciona principalmente
• La construcción “envelope”
• Un conjunto de reglas de codificación
• La representación de RPCs (convenciones)
Servicios Web y Protocolos (III)
23
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
Respuesta
Petición
Servicios Web y Protocolos (IV)
24
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
• “REST es un intento de mostrar cómo debe comportarse una
aplicación Web bien diseñada: una red de páginas Web (una máquina
de estados virtual) donde el usuario progresará seleccionando enlaces
(transiciones de estado) que devuelven la página siguiente (el siguiente
estado de la máquina) que el usuario manejará a su gusto”
[Fielding,2000]
Servicios Web y Protocolos (V)
25
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
• REST - REpresentational State Transfer
• Describe un estilo de arquitectura
• SOA sin Web Services, ni SOAP ni RPC
• Arquitectura con modelo de datos (recursos, URIs y
representaciones XML)
• Composición de diversos estilos: repositorio replicado, cache,
cliente-servidor, sistema en capas, sistema sin estado, máquina
virtual, código bajo demanda e interfaz uniforme
Servicios Web y Protocolos (VI)
26
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
• Una aplicación REST transfiere representaciones entre
componentes usando conectores
• Componentes: incluyen agentes de usuario (Mozilla,
cURL) y servidores de origen (Apache, IIS)
• Los componentes de REST obedecen estas
restricciones:
• Estado y funcionalidad como recursos
• Las interaciones son stateless
• Los recursos se identifican mediante URIs (Uniform
Resource Identifiers)
• No hay servicios ni objetos, sólo recursos
• Manipulación de recursos a través de representaciones
• Conjunto de operaciones limitados GET,POST,PUT y DELETE
• Conjunto limitado de tipos identificado mediante tipos MIME
Servicios Web y Protocolos (VII)
27
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
• Uso de un protocolo cliente/servidor. Cada mensaje HTTP contendrá
la información necesaria para la petición
• Uso de hipermedios para representar el estado de una aplicación.
Esto permite al servidor saber el estado de sus recursos sin
necesidad de almacenar el estado de de los clientes concretos
Servicios Web y Protocolos (VIII)
28
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
• Protocolos utilizados
• HTTP [RFC 1945]: HyperText Transfer Protocol
• URL [RFC 1738] (Uniform Resource Locator) como el mecanismo de
identificación de recursos
• XML / HTML / PNG / etc.. como distintos formatos de representación
de recursos
• Tipos MIME, como text/xml, text/html, image/png, etc.
Servicios Web y Protocolos (y IX)
29
Aplicaciones prácticas de las arquitecturas
orientadas al servicio
Gracias
Somos UTM

Más contenido relacionado

Similar a S11-DAW-2022S1.pptx

Soa
SoaSoa
Resumido
ResumidoResumido
Resumido
guest639eba
 
Altenia SOA
Altenia SOAAltenia SOA
Altenia SOA
altenia
 
Benchmarking
BenchmarkingBenchmarking
Benchmarking
UJAP
 
Soa
SoaSoa
Soa
UJAP
 
Introducción SOA - Cloud Computing
Introducción SOA - Cloud ComputingIntroducción SOA - Cloud Computing
Introducción SOA - Cloud Computing
José Ignacio Orlando
 
Evolución TI en el sector de Telecomunicaciones
Evolución TI en el sector de TelecomunicacionesEvolución TI en el sector de Telecomunicaciones
Evolución TI en el sector de Telecomunicaciones
Jaime Contreras
 
Arquitectura soa
Arquitectura soaArquitectura soa
Arquitectura soa
JOAQUIN ENRIQUE LEAL ABRIL
 
Arquitectura soa
Arquitectura soaArquitectura soa
Arquitectura soa
JOAQUIN ENRIQUE LEAL ABRIL
 
SOA---VERA GUIJARRO VIVIANA 3A6
SOA---VERA GUIJARRO VIVIANA 3A6SOA---VERA GUIJARRO VIVIANA 3A6
SOA---VERA GUIJARRO VIVIANA 3A6
vivianaveraguijarro
 
Introducción soa
Introducción soaIntroducción soa
Introducción soa
Juan Pablo
 
SOA.pdf
SOA.pdfSOA.pdf
SOA.pdf
Dario Robayo
 
Clase Soa
Clase SoaClase Soa
Clase Soa
Rafael Montes
 
SOA Open Source
SOA Open SourceSOA Open Source
SOA Open Source
Lenin Lozano
 
Fundamentos SOA
Fundamentos SOAFundamentos SOA
Fundamentos SOA
SOFKA TECHNOLOGIES
 
SOA
SOASOA
Cloud Computing VS SOA
Cloud Computing VS SOACloud Computing VS SOA
Cloud Computing VS SOA
Alejandro Fernando García Alcarria
 
Arquitectura Orientada a Servicios
Arquitectura Orientada a ServiciosArquitectura Orientada a Servicios
Arquitectura Orientada a Servicios
Juan Carlos Olivares Rojas
 
Is soa
Is soaIs soa
Arquitectura de integración de servicios
Arquitectura de integración de serviciosArquitectura de integración de servicios
Arquitectura de integración de servicios
Coatzozon20
 

Similar a S11-DAW-2022S1.pptx (20)

Soa
SoaSoa
Soa
 
Resumido
ResumidoResumido
Resumido
 
Altenia SOA
Altenia SOAAltenia SOA
Altenia SOA
 
Benchmarking
BenchmarkingBenchmarking
Benchmarking
 
Soa
SoaSoa
Soa
 
Introducción SOA - Cloud Computing
Introducción SOA - Cloud ComputingIntroducción SOA - Cloud Computing
Introducción SOA - Cloud Computing
 
Evolución TI en el sector de Telecomunicaciones
Evolución TI en el sector de TelecomunicacionesEvolución TI en el sector de Telecomunicaciones
Evolución TI en el sector de Telecomunicaciones
 
Arquitectura soa
Arquitectura soaArquitectura soa
Arquitectura soa
 
Arquitectura soa
Arquitectura soaArquitectura soa
Arquitectura soa
 
SOA---VERA GUIJARRO VIVIANA 3A6
SOA---VERA GUIJARRO VIVIANA 3A6SOA---VERA GUIJARRO VIVIANA 3A6
SOA---VERA GUIJARRO VIVIANA 3A6
 
Introducción soa
Introducción soaIntroducción soa
Introducción soa
 
SOA.pdf
SOA.pdfSOA.pdf
SOA.pdf
 
Clase Soa
Clase SoaClase Soa
Clase Soa
 
SOA Open Source
SOA Open SourceSOA Open Source
SOA Open Source
 
Fundamentos SOA
Fundamentos SOAFundamentos SOA
Fundamentos SOA
 
SOA
SOASOA
SOA
 
Cloud Computing VS SOA
Cloud Computing VS SOACloud Computing VS SOA
Cloud Computing VS SOA
 
Arquitectura Orientada a Servicios
Arquitectura Orientada a ServiciosArquitectura Orientada a Servicios
Arquitectura Orientada a Servicios
 
Is soa
Is soaIs soa
Is soa
 
Arquitectura de integración de servicios
Arquitectura de integración de serviciosArquitectura de integración de servicios
Arquitectura de integración de servicios
 

Más de Luis Fernando Aguas Bucheli

EFC-ISW-Luis Fernando Aguas.pptx
EFC-ISW-Luis Fernando Aguas.pptxEFC-ISW-Luis Fernando Aguas.pptx
EFC-ISW-Luis Fernando Aguas.pptx
Luis Fernando Aguas Bucheli
 
P-S2.pptx
P-S2.pptxP-S2.pptx
EBTS-S1.pptx
EBTS-S1.pptxEBTS-S1.pptx
P-S3.pptx
P-S3.pptxP-S3.pptx
EBTS-S4.pptx
EBTS-S4.pptxEBTS-S4.pptx
P-S4.pptx
P-S4.pptxP-S4.pptx
P-S1.pptx
P-S1.pptxP-S1.pptx
EBTS-S3.pptx
EBTS-S3.pptxEBTS-S3.pptx
EBTS-S2.pptx
EBTS-S2.pptxEBTS-S2.pptx
PDIDTI-S7.pptx
PDIDTI-S7.pptxPDIDTI-S7.pptx
PDIDTI-S4.pptx
PDIDTI-S4.pptxPDIDTI-S4.pptx
PDIDTI-S2.pptx
PDIDTI-S2.pptxPDIDTI-S2.pptx
PDIDTI-S1.pptx
PDIDTI-S1.pptxPDIDTI-S1.pptx
PDIDTI-S8.pptx
PDIDTI-S8.pptxPDIDTI-S8.pptx
PDIDTI-S6.pptx
PDIDTI-S6.pptxPDIDTI-S6.pptx
PDIDTI-S5.pptx
PDIDTI-S5.pptxPDIDTI-S5.pptx
PDIDTI-S3.pptx
PDIDTI-S3.pptxPDIDTI-S3.pptx
TIC-S4.pptx
TIC-S4.pptxTIC-S4.pptx
TIC-S3.pptx
TIC-S3.pptxTIC-S3.pptx
TIC-S2.pptx
TIC-S2.pptxTIC-S2.pptx

Más de Luis Fernando Aguas Bucheli (20)

EFC-ISW-Luis Fernando Aguas.pptx
EFC-ISW-Luis Fernando Aguas.pptxEFC-ISW-Luis Fernando Aguas.pptx
EFC-ISW-Luis Fernando Aguas.pptx
 
P-S2.pptx
P-S2.pptxP-S2.pptx
P-S2.pptx
 
EBTS-S1.pptx
EBTS-S1.pptxEBTS-S1.pptx
EBTS-S1.pptx
 
P-S3.pptx
P-S3.pptxP-S3.pptx
P-S3.pptx
 
EBTS-S4.pptx
EBTS-S4.pptxEBTS-S4.pptx
EBTS-S4.pptx
 
P-S4.pptx
P-S4.pptxP-S4.pptx
P-S4.pptx
 
P-S1.pptx
P-S1.pptxP-S1.pptx
P-S1.pptx
 
EBTS-S3.pptx
EBTS-S3.pptxEBTS-S3.pptx
EBTS-S3.pptx
 
EBTS-S2.pptx
EBTS-S2.pptxEBTS-S2.pptx
EBTS-S2.pptx
 
PDIDTI-S7.pptx
PDIDTI-S7.pptxPDIDTI-S7.pptx
PDIDTI-S7.pptx
 
PDIDTI-S4.pptx
PDIDTI-S4.pptxPDIDTI-S4.pptx
PDIDTI-S4.pptx
 
PDIDTI-S2.pptx
PDIDTI-S2.pptxPDIDTI-S2.pptx
PDIDTI-S2.pptx
 
PDIDTI-S1.pptx
PDIDTI-S1.pptxPDIDTI-S1.pptx
PDIDTI-S1.pptx
 
PDIDTI-S8.pptx
PDIDTI-S8.pptxPDIDTI-S8.pptx
PDIDTI-S8.pptx
 
PDIDTI-S6.pptx
PDIDTI-S6.pptxPDIDTI-S6.pptx
PDIDTI-S6.pptx
 
PDIDTI-S5.pptx
PDIDTI-S5.pptxPDIDTI-S5.pptx
PDIDTI-S5.pptx
 
PDIDTI-S3.pptx
PDIDTI-S3.pptxPDIDTI-S3.pptx
PDIDTI-S3.pptx
 
TIC-S4.pptx
TIC-S4.pptxTIC-S4.pptx
TIC-S4.pptx
 
TIC-S3.pptx
TIC-S3.pptxTIC-S3.pptx
TIC-S3.pptx
 
TIC-S2.pptx
TIC-S2.pptxTIC-S2.pptx
TIC-S2.pptx
 

Último

Proceso de obtenciòn de nitrogeno por el metodo Haber-Bosh
Proceso de obtenciòn de nitrogeno por el metodo Haber-BoshProceso de obtenciòn de nitrogeno por el metodo Haber-Bosh
Proceso de obtenciòn de nitrogeno por el metodo Haber-Bosh
shirllyleytonm
 
INGLES_LISTA_DE_VOCABULARIO una lista completa
INGLES_LISTA_DE_VOCABULARIO una lista completaINGLES_LISTA_DE_VOCABULARIO una lista completa
INGLES_LISTA_DE_VOCABULARIO una lista completa
JaimmsArthur
 
DIAPOSITIVA DE LA NORMA ISO 22000 EXPOSICI�N.pptx
DIAPOSITIVA DE LA NORMA ISO 22000 EXPOSICI�N.pptxDIAPOSITIVA DE LA NORMA ISO 22000 EXPOSICI�N.pptx
DIAPOSITIVA DE LA NORMA ISO 22000 EXPOSICI�N.pptx
KeylaArlethTorresOrt
 
Infografía de operaciones básicas....pdf
Infografía de operaciones básicas....pdfInfografía de operaciones básicas....pdf
Infografía de operaciones básicas....pdf
jahirrtorresa
 
diagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingenieríadiagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingeniería
karenperalta62
 
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOSSISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
micoltadaniel2024
 
PPT suelos ensayo Proctor - laboratorio 4.pdf
PPT suelos ensayo Proctor - laboratorio 4.pdfPPT suelos ensayo Proctor - laboratorio 4.pdf
PPT suelos ensayo Proctor - laboratorio 4.pdf
EgorRamos1
 
Calculo-de-Camaras-Frigorificas.pdf para trabajos
Calculo-de-Camaras-Frigorificas.pdf para trabajosCalculo-de-Camaras-Frigorificas.pdf para trabajos
Calculo-de-Camaras-Frigorificas.pdf para trabajos
JuanCarlos695207
 
Operaciones Básicas creadora Veronica Maiz
Operaciones Básicas creadora Veronica MaizOperaciones Básicas creadora Veronica Maiz
Operaciones Básicas creadora Veronica Maiz
carolina838317
 
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docxINFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
LuzdeFatimaCarranzaG
 
simbologia y normas de soldadura para su inspección
simbologia y normas de soldadura para su inspecciónsimbologia y normas de soldadura para su inspección
simbologia y normas de soldadura para su inspección
HarofHaro
 
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptxPRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
brandonsinael
 
METODOLOGIA DE TRAZO Y REPLANTEO EN TOPOGRAFIA
METODOLOGIA DE TRAZO Y REPLANTEO EN TOPOGRAFIAMETODOLOGIA DE TRAZO Y REPLANTEO EN TOPOGRAFIA
METODOLOGIA DE TRAZO Y REPLANTEO EN TOPOGRAFIA
LuisCiriacoMolina
 
tipos de energias: la Energía Radiante.pdf
tipos de energias: la Energía Radiante.pdftipos de energias: la Energía Radiante.pdf
tipos de energias: la Energía Radiante.pdf
munozvanessa878
 
PRIMERA Y SEGUNDA LEY DE LA TERMODINÁMICA
PRIMERA Y SEGUNDA LEY DE LA TERMODINÁMICAPRIMERA Y SEGUNDA LEY DE LA TERMODINÁMICA
PRIMERA Y SEGUNDA LEY DE LA TERMODINÁMICA
carmenquintana18
 
exposicion sobre los tipos de cortes de rolas para la produccion de chapas
exposicion sobre los tipos de cortes de rolas para la produccion de chapasexposicion sobre los tipos de cortes de rolas para la produccion de chapas
exposicion sobre los tipos de cortes de rolas para la produccion de chapas
raul958375
 
Cargas de Cálculos Estructurales de un Puente
Cargas de Cálculos Estructurales de un PuenteCargas de Cálculos Estructurales de un Puente
Cargas de Cálculos Estructurales de un Puente
jemifermelgarejoaran1
 
Cálculo del espesor del conducto forzado
Cálculo del espesor del conducto forzadoCálculo del espesor del conducto forzado
Cálculo del espesor del conducto forzado
KristianSaavedra
 
chancadoras.............................
chancadoras.............................chancadoras.............................
chancadoras.............................
ssuser8827cb1
 
FICHA TECNICA PRODUCTOS CONGELADOS EMBALAJE.pdf
FICHA TECNICA PRODUCTOS CONGELADOS EMBALAJE.pdfFICHA TECNICA PRODUCTOS CONGELADOS EMBALAJE.pdf
FICHA TECNICA PRODUCTOS CONGELADOS EMBALAJE.pdf
jesus869159
 

Último (20)

Proceso de obtenciòn de nitrogeno por el metodo Haber-Bosh
Proceso de obtenciòn de nitrogeno por el metodo Haber-BoshProceso de obtenciòn de nitrogeno por el metodo Haber-Bosh
Proceso de obtenciòn de nitrogeno por el metodo Haber-Bosh
 
INGLES_LISTA_DE_VOCABULARIO una lista completa
INGLES_LISTA_DE_VOCABULARIO una lista completaINGLES_LISTA_DE_VOCABULARIO una lista completa
INGLES_LISTA_DE_VOCABULARIO una lista completa
 
DIAPOSITIVA DE LA NORMA ISO 22000 EXPOSICI�N.pptx
DIAPOSITIVA DE LA NORMA ISO 22000 EXPOSICI�N.pptxDIAPOSITIVA DE LA NORMA ISO 22000 EXPOSICI�N.pptx
DIAPOSITIVA DE LA NORMA ISO 22000 EXPOSICI�N.pptx
 
Infografía de operaciones básicas....pdf
Infografía de operaciones básicas....pdfInfografía de operaciones básicas....pdf
Infografía de operaciones básicas....pdf
 
diagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingenieríadiagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingeniería
 
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOSSISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
 
PPT suelos ensayo Proctor - laboratorio 4.pdf
PPT suelos ensayo Proctor - laboratorio 4.pdfPPT suelos ensayo Proctor - laboratorio 4.pdf
PPT suelos ensayo Proctor - laboratorio 4.pdf
 
Calculo-de-Camaras-Frigorificas.pdf para trabajos
Calculo-de-Camaras-Frigorificas.pdf para trabajosCalculo-de-Camaras-Frigorificas.pdf para trabajos
Calculo-de-Camaras-Frigorificas.pdf para trabajos
 
Operaciones Básicas creadora Veronica Maiz
Operaciones Básicas creadora Veronica MaizOperaciones Básicas creadora Veronica Maiz
Operaciones Básicas creadora Veronica Maiz
 
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docxINFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
 
simbologia y normas de soldadura para su inspección
simbologia y normas de soldadura para su inspecciónsimbologia y normas de soldadura para su inspección
simbologia y normas de soldadura para su inspección
 
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptxPRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
 
METODOLOGIA DE TRAZO Y REPLANTEO EN TOPOGRAFIA
METODOLOGIA DE TRAZO Y REPLANTEO EN TOPOGRAFIAMETODOLOGIA DE TRAZO Y REPLANTEO EN TOPOGRAFIA
METODOLOGIA DE TRAZO Y REPLANTEO EN TOPOGRAFIA
 
tipos de energias: la Energía Radiante.pdf
tipos de energias: la Energía Radiante.pdftipos de energias: la Energía Radiante.pdf
tipos de energias: la Energía Radiante.pdf
 
PRIMERA Y SEGUNDA LEY DE LA TERMODINÁMICA
PRIMERA Y SEGUNDA LEY DE LA TERMODINÁMICAPRIMERA Y SEGUNDA LEY DE LA TERMODINÁMICA
PRIMERA Y SEGUNDA LEY DE LA TERMODINÁMICA
 
exposicion sobre los tipos de cortes de rolas para la produccion de chapas
exposicion sobre los tipos de cortes de rolas para la produccion de chapasexposicion sobre los tipos de cortes de rolas para la produccion de chapas
exposicion sobre los tipos de cortes de rolas para la produccion de chapas
 
Cargas de Cálculos Estructurales de un Puente
Cargas de Cálculos Estructurales de un PuenteCargas de Cálculos Estructurales de un Puente
Cargas de Cálculos Estructurales de un Puente
 
Cálculo del espesor del conducto forzado
Cálculo del espesor del conducto forzadoCálculo del espesor del conducto forzado
Cálculo del espesor del conducto forzado
 
chancadoras.............................
chancadoras.............................chancadoras.............................
chancadoras.............................
 
FICHA TECNICA PRODUCTOS CONGELADOS EMBALAJE.pdf
FICHA TECNICA PRODUCTOS CONGELADOS EMBALAJE.pdfFICHA TECNICA PRODUCTOS CONGELADOS EMBALAJE.pdf
FICHA TECNICA PRODUCTOS CONGELADOS EMBALAJE.pdf
 

S11-DAW-2022S1.pptx

  • 1. Facultad de Ciencias Informáticas Desarrollo de Aplicaciones Web Unidad 3 Arquitectura orientada a microservicios web y manejo de estados PhD(c). Luis Fernando Aguas Bucheli +593 984015184 @Aguaszoft luis.aguas@utm.edu.ec
  • 2. Objetivos de Desarrollo Sostenible Meta 4.7 De aquí a 2030, asegurar que todos los alumnos adquieran los conocimientos teóricos y prácticos necesarios para promover el desarrollo sostenible, entre otras cosas mediante la educación para el desarrollo sostenible y los estilos de vida sostenibles, los derechos humanos, la igualdad de género, la promoción de una cultura de paz y no violencia, la ciudadanía mundial y la valoración de la diversidad cultural y la contribución de la cultura al desarrollo sostenible
  • 3. Nuestra mayor gloria no es no caer nunca, sino levantarnos cada vez que caemos
  • 4. Resultado de Aprendizaje • Diseñar un producto de software en el que se apliquen principios de diseño, para que sea robusto, fácil de mantener y modificar Contenido • Unidad 3 Arquitectura orientada a microservicios web y manejo de estados • 3.1 Arquitectura orientada a servicios • 3.1.1 Manifiesto SOA • 3.1.2 Servicios web
  • 5. Introducción (I) 5 Aplicaciones prácticas de las arquitecturas orientadas al servicio • Nuevas aplicaciones, nuevas necesidades, nuevos contextos • “Más del 80% de las “Fortune 500” modificaron su modelo de negocios en los últimos 2 años. Dos tercios de éstos informaron que los cambios en su negocio estuvieron restringidos por tecnología inflexible” Service Oriented Architecture: An Introduction for Managers” CBDI Forum • Cambios en el negocio del desarrollo de aplicaciones. “Entre 2005 y 2008, más del 80% de los proyectos de desarrollo se basarán en SOA (0.8 Prob.)” Service-Oriented Architectures Alter IT Services Market, Gartner • Nos estan diciendo que la Flexibilidad en el Negocio llegará a ser más importante que la Eficiencia Operacional...Es probable que estemos llegando a una nueva edad en donde veamos la muerte de algunas formas de hacer negocios porque no pudieron adaptarse lo suficientemente rápido Bryan Glick, Global Future Forum. An Industry Think Tank
  • 6. Introducción (II) 6 Aplicaciones prácticas de las arquitecturas orientadas al servicio • Problemática • Necesidades derivadas de las concepciones de Web 2.0 • Mayor evolución en las nuevas líneas de negocio y mayores dependencias con respecto a la tecnología • Poca flexibilidad en el soporte al negocio • Fuertes restricciones y dificultades para la realización de cambios de negocio • Ambientes distribución de aplicaciones heterogéneos • Integración de los sistemas es una pesadilla • Necesidad de reutilización de tecnologías e inversiones
  • 7. Introducción (III) • ¿Qué es una arquitectura? • Arquitectura es la organización fundamental de un sistema descrita en • Sus componentes • Relación entre ellos y con el ambiente • Principios que guían su diseño y evolución IEEE 1471 • La arquitectura del software alude a la estructura global del software y las formas en que esa estructura proporciona integridad conceptual a un sistema [Shaw y Garlan, 1995] • La arquitectura del software es la estructura lógica y física de un sistema, forjada por todas las decisiones de diseño estratégicas y tácticas aplicadas durante el desarrollo [Booch, 1994] 7 Aplicaciones prácticas de las arquitecturas orientadas al servicio
  • 8. Introducción (IV) • Evolución de las arquitecturas Abstracción Vertical Horizontal Ecosistema 8 Aplicaciones prácticas de las arquitecturas orientadas al servicio
  • 9. Introducción (V) • Propiedades de las arquitecturas 9 Aplicaciones prácticas de las arquitecturas orientadas al servicio
  • 10. Introducción (VI) • Un servicio es una funcionalidad construida como un componente reusable para ser utilizado en un proceso de negocio [Fagalde, 2006] • El proceso utilizado para implementar un servicio no es importante, siempre y cuando • responda al requerimiento • ofrezca la calidad de servicio deseada • Desde la perspectiva de quien lo invoca, es visto como una funcionalidad autocontenida 10 Aplicaciones prácticas de las arquitecturas orientadas al servicio
  • 11. 11 Introducción (VII) • Un servicio encapsula su implementación 11 Aplicaciones prácticas de las arquitecturas orientadas al servicio
  • 12. Introducción (VIII) • Los servicios pueden componerse, constituyendo los ”building blocks”, pudiendo ser reusados para desarrollar otras aplicaciones • El enfoque está en sus interfaces en lugar de los detalles de implementación (partes desacopladas) • Los servicios son utilizados sin depender de su ubicación, su tecnología, o forma de invocación 12 Aplicaciones prácticas de las arquitecturas orientadas al servicio
  • 13. ¿Qué es SOA? (I) • SOA no se deriva de una propuesta académica • No hay technical reports de SOA en SEI (Software Engineering Institute) • Service-oriented architecture fue descrita por primera vez por Gartner en 1996 • SSA Research Note SPA-401-068, 12 de abril, “‘Service Oriented’ Architectures, Part 1” y SSA Research Note SPA-401-069, 12 de abril, “‘Service Oriented’ Architectures, Part 2” 13 Aplicaciones prácticas de las arquitecturas orientadas al servicio
  • 14. • “Conjunto de componentes que pueden ser invocados, cuyas descripciones de interfaces se pueden publicar y descubrir” [W3C, 2004] • CBDI rechaza esa definición: • Los componentes pueden no ser conjuntos • La definición sólo considera los componentes y no la práctica o el arte de construir la arquitectura • “Estilo resultante de políticas, prácticas y frameworks que permiten que la funcionalidad de una aplicación se pueda proveer y consumir como conjuntos de servicios, con una granularidad relevante para el consumidor. Los servicios pueden invocarse, publicarse y descubrirse y están abstraídos de su implementación utilizando una sola forma estándar de interface” [Sprott y Wilkies, 2004] • Según OASIS, SOA es un paradigma para utilizar y organizar funcionalidades distribuidas que pueden estar controladas por diferentes propietarios de dominio. [OASIS, 2006] ¿Qué es SOA? (II) 14 Aplicaciones prácticas de las arquitecturas orientadas al servicio
  • 16. Aplicaciones prácticas de las arquitecturas orientadas al servicio 16 Características de SOA (II) Ingreso  Nuevos mercados, canales y valor de sistemas existentes Flexibilidad  Soporte a modelos flexibles de Negocio habilitados por servicios y tecnología- enfoque agnóstico Velocidad  Permite la reutilización de componentes prefabricados de servicio para implementaciones rápidas Eficacia  Integra sistemas separados de distintas plataformas  Automatiza procesos clave de negocios  Los recursos trabajan para la misma estrategia de TI Servicio  Ofrecer nuevos servicios a clientes y socios utilizando la infraestructura de TI existente Costo  Eliminar duplicidad de sistemas Riesgo  Mejorar visibilidad de procesos de negocio [Fagalde, 2006]
  • 17. Aplicaciones prácticas de las arquitecturas orientadas al servicio 17 Características de SOA (III) Servicio Servicio Servicio Servicio Servicio Servicio Bus
  • 18. • Servicios: Entidades lógicas - Contratos definidos por una o más interfaces públicas • Service provider: Entidad de software que implementa una especificación de servicio • Service consumer (o requestor): Entidad de software que llama a un service provider. Tradicionalmente se lo llama “cliente”. Puede ser una aplicación final u otro servicio • Service locator: Tipo específico de service provider que actúa como registry y permite buscar interfaces de service providers y sus ubicaciones • Service broker: Tipo específico de service provider que puede pasar requisitos de servicios a otros service providers Características de SOA (IV) Aplicaciones prácticas de las arquitecturas orientadas al servicio 18
  • 19. • Implementaciones SOA • WS no requiere despliegue • WS no requiere clientes específicos ni drivers • SOA se redefine como paso de mensajes, no RPC • Diferentes opciones de implementación de WS Características de SOA (y V) DCOM CORBA JAVA RMI WS Protocolo RPC RPC IIOP IIOP o JRMP SOAP Formato mensaje NDR CDR Java Serialization Format XML 1.0 Namespaces Descripción IDL OMG IDL Java WSDL Descubrimiento Registry Naming Service RMI Registry o JNDI UDDI Marshalling Type Library Marshaller Serialization Aplicaciones prácticas de las arquitecturas orientadas al servicio 19
  • 20. • Web services: Diferentes definiciones en W3C Web Services Architecture Working Group • “Un servicio web es un sistema software diseñado para soportar interacción entre nodos de una red. Consta de una interfaz descrita en un lenguaje procesable por las máquinas (WSDL). Otros sistemas interacturán con el servicio de la forma descrita en su descripción utilizando mensajes SOAP, típicamente usando HTTP y en XML junto con otros protocolos web” [W3C,2004] • SOA es históricamente anterior (no por mucho) • Un web service es SOA si: • Las interfaces se basan en protocolos de web (HTTP, SMTP, FTP) • A excepción de los attachments, los mensajes se basan en XML • Dos estilos de web service: SOAP y REST • REST es anti-RPC • SOAP puede interpretarse en términos de mensajes o de RPC (Don Box) Servicios Web y Protocolos (I) 20 Aplicaciones prácticas de las arquitecturas orientadas al servicio
  • 21. Servicios Web y protocolos (II) • Involucra • Poder preguntar por descripciones de WS que ofrece un sitio • Definir formatos y ordenamiento de los mensajes • Formato para enviar y recibir datos usando XML • Uso de protocolos de internet abiertos Aplicaciones prácticas de las arquitecturas orientadas al servicio 21 Protocolos Internet Abiertos Web Service Lógica de aplicación encapsulada como un componente en la Web para ser usada por otros programas UDDI WSDL contract language SOAP XML, HTTP, HTTPS
  • 22. • CBDI: • SOA es más amplio. Los web services son sólo una interface programática en conformidad con los protocolos WS-* • Puede haber SOA sin WS (ej. REST) • Los web services proporcionan independencia de plataforma, bajo acoplamiento, auto-descripción y descubrimiento • Los web services no son parte obligatoria de SOA, pero son una implementación adecuada Servicios Web y Protocolos (II) 22 Aplicaciones prácticas de las arquitecturas orientadas al servicio
  • 23. • Simple Object Access Protocol es el estándar de-facto para interconexión • Permite el intercambio de información estructurada y con tipos entre entidades (peers) descentralizados • Codificación y empaquetamiento basado en XML para intercambiar datos, mensajes, RPCs • SOAP proporciona principalmente • La construcción “envelope” • Un conjunto de reglas de codificación • La representación de RPCs (convenciones) Servicios Web y Protocolos (III) 23 Aplicaciones prácticas de las arquitecturas orientadas al servicio
  • 24. Respuesta Petición Servicios Web y Protocolos (IV) 24 Aplicaciones prácticas de las arquitecturas orientadas al servicio
  • 25. • “REST es un intento de mostrar cómo debe comportarse una aplicación Web bien diseñada: una red de páginas Web (una máquina de estados virtual) donde el usuario progresará seleccionando enlaces (transiciones de estado) que devuelven la página siguiente (el siguiente estado de la máquina) que el usuario manejará a su gusto” [Fielding,2000] Servicios Web y Protocolos (V) 25 Aplicaciones prácticas de las arquitecturas orientadas al servicio
  • 26. • REST - REpresentational State Transfer • Describe un estilo de arquitectura • SOA sin Web Services, ni SOAP ni RPC • Arquitectura con modelo de datos (recursos, URIs y representaciones XML) • Composición de diversos estilos: repositorio replicado, cache, cliente-servidor, sistema en capas, sistema sin estado, máquina virtual, código bajo demanda e interfaz uniforme Servicios Web y Protocolos (VI) 26 Aplicaciones prácticas de las arquitecturas orientadas al servicio
  • 27. • Una aplicación REST transfiere representaciones entre componentes usando conectores • Componentes: incluyen agentes de usuario (Mozilla, cURL) y servidores de origen (Apache, IIS) • Los componentes de REST obedecen estas restricciones: • Estado y funcionalidad como recursos • Las interaciones son stateless • Los recursos se identifican mediante URIs (Uniform Resource Identifiers) • No hay servicios ni objetos, sólo recursos • Manipulación de recursos a través de representaciones • Conjunto de operaciones limitados GET,POST,PUT y DELETE • Conjunto limitado de tipos identificado mediante tipos MIME Servicios Web y Protocolos (VII) 27 Aplicaciones prácticas de las arquitecturas orientadas al servicio
  • 28. • Uso de un protocolo cliente/servidor. Cada mensaje HTTP contendrá la información necesaria para la petición • Uso de hipermedios para representar el estado de una aplicación. Esto permite al servidor saber el estado de sus recursos sin necesidad de almacenar el estado de de los clientes concretos Servicios Web y Protocolos (VIII) 28 Aplicaciones prácticas de las arquitecturas orientadas al servicio
  • 29. • Protocolos utilizados • HTTP [RFC 1945]: HyperText Transfer Protocol • URL [RFC 1738] (Uniform Resource Locator) como el mecanismo de identificación de recursos • XML / HTML / PNG / etc.. como distintos formatos de representación de recursos • Tipos MIME, como text/xml, text/html, image/png, etc. Servicios Web y Protocolos (y IX) 29 Aplicaciones prácticas de las arquitecturas orientadas al servicio