0% encontró este documento útil (0 votos)
86 vistas17 páginas

S03 S1-Material

El documento resume los conceptos clave de middleware. Define middleware como software que permite la interacción entre aplicaciones y sistemas de forma transparente. Explica sus características como la independencia de la implementación y protocolos de comunicación. Proporciona ejemplos como HTTP, JDBC y CORBA. Finalmente, destaca que middleware como CORBA proveen control de tipos y homogeneización a diferencia de sockets TCP/IP.

Cargado por

Jose Vasquez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
86 vistas17 páginas

S03 S1-Material

El documento resume los conceptos clave de middleware. Define middleware como software que permite la interacción entre aplicaciones y sistemas de forma transparente. Explica sus características como la independencia de la implementación y protocolos de comunicación. Proporciona ejemplos como HTTP, JDBC y CORBA. Finalmente, destaca que middleware como CORBA proveen control de tipos y homogeneización a diferencia de sockets TCP/IP.

Cargado por

Jose Vasquez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

2/05/2020

SISTEMAS DISTRIBUIDOS

Sesión 3
Middleware

Ing. Informático Iván Robles Fernández


MG-MSc-SMC-PMP-CIP N°177516
Ivan [Link] 202O
Usted es libre de copiar, distribuir y comunicar públicamente la obra y de hacer obras derivadas bajo las condiciones de la licencia Attribution-Share alike de Creative Commons.
Puede consultar el texto completo de la licencia en [Link]

2/05/2020 Sistemas Distribuidos 1

Logro de la Sesión
Al finalizar la sesión, el estudiante, define, identifica y realiza aplicaciones
de middlewares en entornos distribuidos.

2/05/2020 Sistemas Distribuidos 2

1
2/05/2020

Dudas de la clase anterior

2/05/2020 Sistemas Distribuidos 3

Conocimientos Previos

2/05/2020 Sistemas Distribuidos 4

2
2/05/2020

Utilidad

2/05/2020 Sistemas Distribuidos 5

2/05/2020 Sistemas Distribuidos 6

3
2/05/2020

Prerequisitos

Conceptos básicos de Conocimientos de Muchas Ganas!


redes Tecnologías Web

2/05/2020 Sistemas Distribuidos 7

Contenido

1 2 3 4 5

Definición Características Ejemplos Caso Conclusiones


Práctico

2/05/2020 Sistemas Distribuidos 8

4
2/05/2020

Contenido

1 2 3 4 5

Definición Características Ejemplos Caso Conclusiones


Práctico

2/05/2020 Sistemas Distribuidos 9

Definición Sistemas Distribuidos

Definición

• Es un software que asiste a una aplicación para interactuar o


comunicarse con otras aplicaciones, software, redes, hardware
y/o sistemas operativos.

• Ocultan la heterogeneidad, abstrae la complejidad


subyacente y proveen de un modelo de programación
conveniente para los desarrolladores de aplicaciones.

2/05/2020 Sistemas Distribuidos 10

5
2/05/2020

Definición Sistemas Distribuidos

Definición

• La organización IETF (Internet Engineering Task Force) en mayo de 1997


lo definió como sigue: – “Un Middleware puede ser visto como un
conjunto de servicios y funciones reutilizables, expandibles, que son
comúnmente utilizadas por muchas aplicaciones para funcionar bien
dentro de un ambiente interconectado”.

2/05/2020 Sistemas Distribuidos 11

Definición Sistemas Distribuidos

Definición

• Es un software que puede incrementar significativamente la


reusabilidad mediante soluciones utilizables rápidamente y basadas en
estándares aplicables a problemas y tareas comunes en
programación. Permite concentrarse en asuntos propios de la aplicación
y olvidarse de problemas comunes, estructurales o no, ya resueltos
previamente de forma elegante y satisfactoria..

2/05/2020 Sistemas Distribuidos 12

6
2/05/2020

Contenido

1 2 3 4 5

Definición Características Ejemplos Caso Conclusiones


Práctico

2/05/2020 Sistemas Distribuidos 13

Definición Sistemas Distribuidos

• Resumen de características
• –Independiza el servicio de su implantación, del sistema operativo y de los
protocolos de comunicaciones.
• –Permite la convivencia de distintos servicios en un mismo sistema.
• –Permite la transparencia en el sistema.

•En general pueden ser vistos como


–Abstracción de programación

2/05/2020 Sistemas Distribuidos 14

7
2/05/2020

Contenido

1 2 3 4 5

Definición Características Ejemplos Abstracción Conclusiones

2/05/2020 Sistemas Distribuidos 15

Arquitectura SD -Software Sistemas Distribuidos

• Ejemplos de middleware para dominios específicos incluyen:


• ODBC/JDBC, para bases de datos,

• Lotus para groupware,

• HTTP y SSL para la Web,

• CORBA, DCOM y JAVA RMI para objetos distribuidos.

2/05/2020 Sistemas Distribuidos 16

8
2/05/2020

Arquitectura SD -Software Sistemas Distribuidos

Ejemplos

2/05/2020 Sistemas Distribuidos 17

Arquitectura SD -Software Sistemas Distribuidos

Ejemplos

Type 3 driver – Network-Protocol Type 4 driver – Database-Protocol driver/Thin


driver (middleware driver) Driver(Pure Java driver)

2/05/2020 Sistemas Distribuidos 18

9
2/05/2020

Arquitectura SD -Software Sistemas Distribuidos

Ejemplos

Todos los programas Java que se conectan a una base de datos vía JDBC, utilizan un driver o controlador de
bases de datos. Es el intermediario entre la capa de negocio y la capa de base de datos y así mismo funge como
el “traductor” de las sentencias Java a sentencias SQL propias del manejador de bases de datos.

2/05/2020 Sistemas Distribuidos 19

Arquitectura SD -Software Sistemas Distribuidos

Ejemplos

• No todos los Middleware son iguales. e.g. : CORBA y Sockets


TCP/IP.

• Mientras que los Sockets no ofrecen control de tipos ni


homogeneización de arquitecturas,
• CORBA, DCOM, etc., ofrecen estas posibilidades

2/05/2020 Sistemas Distribuidos 20

10
2/05/2020

Contenido

1 2 3 4 5

Definición Características Ejemplos Abstracción Conclusiones

2/05/2020 Sistemas Distribuidos 21

Arquitectura SD -Hardware Sistemas Distribuidos

2/05/2020 Sistemas Distribuidos 22

11
2/05/2020

Arquitectura SD -Hardware Sistemas Distribuidos

MIDDLEWARE:SOCKETS

• Constituye la interfaz de programación


de la capa de transporte.
• Es un mecanismo de comunicación
bidireccional
• El más ampliamente usado
• Nacieron con la familia de protocolos
TCP/IP
• Existe prácticamente en cualquier
plataforma de computación

2/05/2020 Sistemas Distribuidos 23

Arquitectura SD -Hardware Sistemas Distribuidos

MIDDLEWARE:RPC

• RPC está basado en C, y como tal tiene


una semántica de programación
estructurada
• Con RPC puede simplemente llamar a
funciones remotas exportadas a un
servidor.
• RPC no se ocupa de objetos. Por el
contrario, llama a subrutinas específicas
que ya están establecidas.

2/05/2020 Sistemas Distribuidos 24

12
2/05/2020

Arquitectura SD -Hardware Sistemas Distribuidos

MIDDLEWARE:RPC

• Con RPC, se obtiene una llamada de


procedimiento que se ve más o menos
como una llamada local.

• RPC maneja las complejidades


involucradas al pasar la llamada de la
computadora local a la remota.

2/05/2020 Sistemas Distribuidos 25

Arquitectura SD -Hardware Sistemas Distribuidos

MIDDLEWARE:RMI
• RMI utiliza un paradigma orientado a objetos,
donde el usuario tiene que conocer el objeto y
el método del objeto que tiene que invocar.

• RMI hace exactamente lo mismo, pero RMI


pasa una referencia al objeto y al método que
se está llamando.

• RMI es un enfoque mejor en comparación con


RPC, especialmente con programas más
grandes, ya que proporciona un código de
producto de limpieza que es más fácil de
identificar si algo sale mal.
2/05/2020 Sistemas Distribuidos 26

13
2/05/2020

Arquitectura SD -Hardware Sistemas Distribuidos

MIDDLEWARE:RMI
• RMI Ejemplos :
• Java RMI, CORBA, Microsoft DCOM/COM +,
SOAP (Simple Object Access Protocolo)

2/05/2020 Sistemas Distribuidos 27

Arquitectura SD -Hardware Sistemas Distribuidos

MIDDLEWARE:CORBA
Common Object Request Broker Architecture
(CORBA) es un estándar definido por Object
Management Group (OMG).
Permite que diversos componentes de software
escritos en múltiples lenguajes de programación y
que corren en diferentes computadoras, puedan
trabajar juntos.
Es decir, facilita el desarrollo de aplicaciones
distribuidas en entornos heterogéneos.
2/05/2020 Sistemas Distribuidos 28

14
2/05/2020

Arquitectura SD -Hardware Sistemas Distribuidos

MIDDLEWARE:DCOM

DCOM permite llamadas a los objetos


remotos
• Soporta interfaces múltiples escritas en
un lenguaje IDL similar a C++

Ventajas:
• DCOM permite el uso de varios lenguajes de programación
• DCOM soporta recolección distribuida de basura
Inconvenientes:
• Muy ligado a los sistemas operativos de Microsoft, aunque existen
implementaciones para Unix, y Apple Macintosh

2/05/2020 Sistemas Distribuidos 29

Arquitectura SD -Hardware Sistemas Distribuidos

MIDDLEWARE:SISTEMAS DISTRIBUIDOS

• Componente de software reutilizable y distribuido que ofrece una


funcionalidad concreta, independiente tanto del lenguaje de
programación en que está implementado como de la plataforma de
ejecución.

• Aplicaciones auto-contenidas que pueden ser descritas, publicadas,


localizadas e invocadas sobre la Internet (o cualquier otra red)

2/05/2020 Sistemas Distribuidos 30

15
2/05/2020

Contenido

1 2 3 4 5

Definición Características Ejemplos Abstracción Conclusiones

2/05/2020 Sistemas Distribuidos 31

Arquitectura SD -Hardware Sistemas Distribuidos

2/05/2020 Sistemas Distribuidos 32

16
2/05/2020

MUCHAS GRACIAS!

2/05/2020 Sistemas Distribuidos 33

17

También podría gustarte