SlideShare ist ein Scribd-Unternehmen logo
1 von 24
pág. 1
UNIVERSIDAD NACIONAL DE LA AMAZONIA
PERUANA
FACULTAD DE INGENIERIA DE SISTEMAS E
INFORMATICA
PROCESAMIENTO DISTRIBUIDO
TRABAJO MONOGRAFICO
TEMA : - Middleware En Los Sistemas Distribuidos
DOCENTE : - Ing. Cesar Augusto Palacios Chavez
ALUMNO : - Juan Carlos AlcaArequi
- CiroAlcaArequi
- Roger Jim PadillaRengifo
NIVEL : V
CICLO : X
IQUITOS – PERU – 2017
pág. 2
DEDICATORIA
El presente trabajo monográfico está dedicado
a nuestros padres que son nuestra mayor
inspiración para seguir adelante.
pág. 3
AGRADECIMIENTO
Queremos agradecer a Dios por estar presente en
nuestras vidas y por ser nuestra guía.
Queremos agradecer al Ing. Cesar Augusto
Palacios Chavez por darnos la oportunidad de
conocer acerca del tema Middleware en los
Sistemas Distribuidos.
Queremos agradecer a nuestros Padres por estar
presente en nuestras vidas.
pág. 4
INDICE
INTRODUCCIÓN………………………………………………………………………………………………….…………………… 05
OBJETIVOS………………………………………………………………………………………………………………………….…… 06
1. HISTORIA DE MIDDLEWARE.………………………………………………………………………….….................…07
2. DEFINICION DEMIDDLEWARE………….………………………………………………………..……..……………….. 07
3. CARACTERISTICASDEMIDDLEWARE………………………………………………………………………….……..… 08
4. ELEMENTOS DE MIDDLEWARE………………….………………………………………………………………………… 08
5. FUNCIONES DE MIDDLEWARE…………….…………………………………………………………..………………….. 09
6. TAXONOMIA DE LOS SOFTWAREMIDDLEWARE……………………………………………………………….…. 10
6.1 CATEGORIA DE INTEGRACION……………………………………………………………………………………... 10
6.1.1 ORIENTADOSA PROCEDIMIENTOO PROCESOS…………………..………………………….....10
6.1.2 ORIENTADOSA OBJETOS………………………………………………………………………………….… 11
6.1.3 ORIENTADOSA MENSAJES……………………………………………………………………………….… 11
6.1.4 ORIENTADOSA COMPONENTES…………………………………………………………………….…… 12
6.2 CATEGORIA DE APLICACION……………………………………………………………………………….……….. 12
6.2.1 MIDDLEWARE PARA ACCESOA INFORMACION…………………………………….…………….. 12
7. SERVICIOSMIDDLEWARE……………………………………………………………………………………………...….…. 14
8. TIPOSDE MIDDLEWARE……………………………………………………………………………………..………….….… 15
8.1 SOFTWAREINTERMEDIO GENERAL…………………………………………………..…….…………………... 15
8.2 SOFTWAREINTERMEDIO DE SERVICIOS ……………………………………………….………………….….. 15
9. APLICACION……………………………………………………………………………………………………………..………….. 16
9.1 VENTAJASYCAMPOS DE APLICACION DELMIDDLEWARE……….………..……….………………... 17
9.1.1 MIGRACION DE LOS SISTEMAS HOST……………………..………..………….……….……….... 18
9.1.2 INTERCONECTIVIDAD.……..………………………………………………………..….………….………… 18
9.1.3 ARQUITECTURA ORIENTADA A OBJETOS DISTRIBUIDOS.……………………………..……… 18
9.1.4 ARQUITECTURA CLIENTE/SERVIDOR……………………..……….………….………….……….…… 18
10. ¿PARA QUE USAR MIDDLEWARE?............................................................................................19
11. MIDDLEWARES DE LAS TECNOLOGIASINDICADAS…………………………….…………………..….…….….19
11.1 SOLUCIONESQUE ENTREGAN LOS MIDDLEWARES DE ORACLE….………………………………. 19
11.2 CARACTERISTICASDELOS MIDDLEWARES DE ORACLE…………………..…………………………... 20
11.3 ¿PORQUE HOY EN DIA SON NECESARIOSLOS MIDDLEWARES DE ORACLE?..................20
11.4 TIPOSDE MIDDLEWARE DE ORACLE…………………………………………………………………………… 20
11.5 ORGANIGRAMA MIDDLEWARE DE ORACLE………………………………………………………………… 20
12. ORGANIGRAMA MIDDLEWARE APLICADOA LOS SISTEMAS DISTRIBUIDOS…………………………. 21
13. ALGUNOS PROYECTOSMIDDLEWARE………………………………………………………………………………….. 21
13.1 MIDDLEWARE PARA SISTEMASUBICUOS BASADOEN TECNOLOGIA DE INTERNET2….... 21
13.2 MIDDLEWARE GRID Y PUNTOA PUNTO PARA ENTORNOSDE APRENDIZAJE
COOPERATIVO………………………………………………………………………………………………………….…… 22
CONCLUSION……………………………………………………………………………………………………………………………... 23
BIBLIOGRAFIA……………………………………………………………………………………………………………………….……..24
pág. 5
INTRODUCCION
Como elemento característico de los sistemas distribuidos, surge el concepto de
“Middleware”, la capa de software que se ubica entre el sistema operativo y las
aplicaciones de los usuarios.
Middleware es un software de conectividad, es el software distribuido requerido para
facilitar las interacciones cliente-servidor se denomina Middleware. El API que usan los
clientes para pedir un servicio a algún servidor, la transmisión física de la petición vía red,
y el regreso de resultados desde el servidor al cliente.
Algunos ejemplos de Middleware estándar para algunos dominios incluyen: ODBC, Lotus
groupware, SSL y http.
Hay muchas capas dentro del Middleware, por ejemplo, la capa de protocolos de recursos
y conectividad, y una capa de servicios colectivos que es superior.
pág. 6
OBJETIVOS
OBJETIVO GENERAL
 Desarrollar middlewares generales y en concreto de los middlewares de
publicación suscripción en tiempo real. Se propone estudiar los trabajos científicos
sobre los estándares para la distribución de información en tiempo real y técnicas
de middleware relativas a anotaciones, interceptación de llamadas, sistemas de
protocolos dinámicos, etc.
OBJETIVO ESPECIFICO
 Desarrollo de un sistema de marcado (anotaciones en Java o atributos en C#) que
permita la descripción de los datos sin necesidad de instrumentos externos.
 Desarrollo de un sistema de serialización dinámico para la adaptación y generación
dinámica de protocolos.
 Desarrollo de un sistema de mensajería, es decir, una aplicación de prueba que
permita probar la bondad de la solución propuesta.
pág. 7
MIDDLEWARE EN LOS SISTEMAS DISTRIBUIDOS
1. HISTORIA DE MIDDLEWARE
El origen de la palabra middleware se remonta al año 1968, en donde la palabra fue
usada durante la '1968 NATO Software Engineering Conference',2 siendo una idea de
cómo conectar el nuevo software con sistemas más antiguos. Durante las décadas
previas a los años 1990, fue solamente descrito como un software para la gestión de
conexión en redes, pero para cuando las tecnologías en redes alcanzaron una
penetración y visibilidad suficiente, el software middleware' había evolucionado en un
conjunto de paradigmas y servicios. De esta forma se estaba ofreciendo una manera
más fácil, robusta y controlable, para construir aplicaciones distribuidas.
2. DEFINICION DEMIDDLEWARE
 Middleware o lógica de intercambio de información entre aplicaciones
("interlogical") es un software que asiste a una aplicación para interactuar o
comunicarse con otras aplicaciones, o paquetes de programas, redes, hardware
y/o sistemas operativos.
 Simplifica el trabajo en la tarea de generar las conexiones en los sistemas
distribuidos.
 Provee una solución que mejora la QoS, seguridad, envío de mensajes, directorio
de servicio.
pág. 8
3. CARACTERISTICAS DE MIDDLEWARE
 Servicios de middleware proporcionar un conjunto más funcional de la API de SO y
servicios de red para permitir que una aplicación.
 Búsqueda transparente a través de la red, proporcionando una interacción con
otra aplicación o servicio.
 Ser independientes de los servicios de red.
 Ser confiable y disponible.
 Ampliación en la capacidad sin perder su función.
4. ELEMENTOS DE MIDDLEWARE
El middleware está compuesto de agentes de software que generalmente actúan entre
el sistema operativo y las aplicaciones, con la finalidad de proveer comunicación entre
diferentes aplicaciones en un sistema distribuido. Las funciones que realiza el
middleware dentro de un cluster de servidores (datacenter) son:
 Una interfaz única de acceso al sistema, denominada SSI, la cual genera la
sensación al usuario de que utiliza un único computador muy potente.
 Herramientas para la optimización y mantenimiento del sistema: migración de
procesos, checkpoint-restart (congelar uno o varios procesos, mudarlos de servidor
y continuar su funcionamiento en el nuevo host), balanceo de carga, tolerancia a
fallos, etc.
 Escalabilidad: debe poder detectar automáticamente nuevos servidores
conectados al cluster para proceder a su utilización.
 Existen diversos tipos de middleware, como por ejemplo: MOSIX, OpenMOSIX,
Condor, OpenSSI, etc.
El middleware recibe los trabajos entrantes al cluster y los redistribuye de manera que
el proceso se ejecute más rápido y el sistema n o sufra sobrecargas en un servidor. Esto
se realiza mediante políticas definidas en el sistema (automáticamente o por un
administrador) que le indican dónde y cómo debe distribuir los procesos, por un
sistema de monitorización, el cual controla la carga de cada CPU y la cantidad de
procesos en él.
El middleware también debe poder migrar procesos entre servidores con distintas
finalidades:
 Balancear la carga: si un servidor está muy cargado de procesos y otro está ocioso,
pueden transferirse procesos a este último para liberar de carga al primero y
optimizar el funcionamiento.
pág. 9
 Mantenimiento de servidores: si hay procesos corriendo en un servidor que necesita
mantenimiento o una actualización, es posible migrar los procesos a otro servidor y
proceder a desconectar del cluster al primero.
 Priorización de trabajos: en caso de tener varios procesos corriendo en el cluster,
pero uno de ellos de mayor importancia que los demás, puede migrarse este
proceso a los servidores que posean más o mejores recursos para acelerar su
procesamiento.
5. FUNCIONES DE MIDDLEWARE
La función de middleware es mediar la interacción entre las partes de una o varias
aplicaciones, por lo tanto los problemas de arquitectura juegan un papel central en el
diseño de middleware. La arquitectura se ocupa de la organización, la estructura
general y los patrones de comunicación, tanto para aplicaciones y middleware como
para sí mismo.
Además de los aspectos arquitectónicos, los principales problemas del diseño de
middleware son las relativas a los diversos aspectos de los sistemas distribuidos.
Cualquier sistema de middleware se basa en una capa de comunicación que permite a
sus diferentes piezas para interoperar. Además, la comunicación es una función que
proporciona a las aplicaciones de middleware propio, en el que las entidades
comunicantes pueden asumir diferentes roles como cliente-servidor o peer to peer.
Middleware permite diferentes modos de interacción como: invocaciones síncronas,
paso de mensajes asíncrono, la coordinación a través de objetos compartidos entre
otras.
Las siguientes son las funciones principales de los middlewares en los sistemas
distribuidos:
 Ocultación de la distribución, es decir, el hecho de que una aplicación se compone
generalmente de muchas partes interconectadas que se ejecutan en ubicaciones
distribuidas.
 Cómo ocultar la heterogeneidad de los componentes de hardware, sistemas
operativos y protocolos de comunicación.
 Proporcionar uniformes, estándares, interfaces de alto nivel a los desarrolladores de
aplicaciones e integradores, por lo que las aplicaciones pueden ser fácilmente
integradas, reutilizadas, adaptadas, y hechas para interoperar.
 Suministrar un conjunto de servicios comunes a las diversas funciones de uso
general, con el fin de evitar la duplicación de esfuerzos y para facilitar la
colaboración entre las aplicaciones.
pág. 10
6. TAXONOMIA DE LOS SOFTWARE MIDDLEWARE
La taxonomía o clasificación del software middleware puede ser descrita en dos
grandes categorías: una de integración y otra de aplicación. Estas poseen a su vez
diferentes clases.
6.1 CATEGORIA DE INTEGRACION
El tipo de integración que incluyen posee la capacidad de unirse con sistemas
heterogéneos. Cada middleware posee diferentes protocolos de comunicación o
formas de operar en diferente software. Los tipos de integración se pueden ver
como:
6.1.1 Orientados a procedimiento o procesos
Los middlewares que son orientados a procesos, utilizan una comunicación
sincronizada (como por ejemplo el teléfono). Una de las características de
estos, es que utilizan el client stub y el server skeleton. El client stub
convierte la petición en un mensaje que es mandado al servidor; luego el
server skeleton recibe el mensaje, lo convierte en la petición y llama a la
aplicación del servidor donde ésta es procesada. Terminado el
procesamiento, ocurre el proceso inverso. El client stub verifica los errores,
envía los resultados al software que inició la petición y entonces suspenden
el proceso. Las ventajas de estos middlewares es que usan un tipo estándar
en nombres de servicios y procesos remotos, pueden retornar respuesta aún
con problemas en la red y pueden manejar múltiples tipos de formatos para
datos y niveles heterogéneos de sistemas de servicio. Las desventajas son
que no poseen escalabilidad, no pueden retornar la información a un
programa diferente del que realizó la solicitud (reflexión) y poseen procesos
muy rígidos.
pág. 11
6.1.2 Orientados a objetos
Soportan pedidos de objetos distribuidos. La comunicación entre los objetos
puede ser sincronizada, sincronizada diferida o no sincronizada. Soportan
múltiples pedidos similares realizados por múltiples clientes en una
transacción. La forma de operar es:
El objeto cliente llama a un método lógico para obtener un objeto remoto.
Un ORB Proxy (también conocido como stub) pone en orden la información
(marshalling o serialización) y la transmite a través del agente (broker).
El agente actúa como punto medio y contacta con diversas fuentes de
información, obtiene sus referentes IDs, recolecta información y, en
ocasiones, la reorganiza.
El proxy remoto (también conocido como skeleton) desordena
(unmarshalling o deserialización) la información que le llega del agente y se
la pasa al objeto servidor.
El objeto servidor procesa la información y genera un resultado que es
devuelto al cliente siguiendo los pasos inversos.
Las ventajas son que permiten generar reflexión y escalabilidad, que opera
con múltiples tipos de información y estados y que soporta procesos
múltiples. Las desventajas consisten en obtener la existencia de vínculos
antes de la ejecución y de un código contenedor para algunos sistemas
heredados.
6.1.3 Orientados a mensajes (MOM, Message-oriented middleware)
Se pueden dividir en dos tipos, espera y publicación/suscripción. El paso de
espera se puede dividir en mensaje y espera. El paso de mensaje inicia con
que la aplicación envía un mensaje a uno o más clientes, con el MOM del
cliente. El servidor MOM, recoge las peticiones de la cola (Message Broker)
en un orden o sistema de espera predeterminado. Los actos del servidor
MOM son como un router y usualmente no interactúan con estas. El MOM
de publicación y suscripción actúa de manera ligeramente diferente, es más
orientado a eventos. Si un cliente quiere participar por primera vez, se une al
bus de información. Dependiendo de su función, si es como publicador,
suscriptor y ambas, este registra un evento. El publicador envía una noticia
de un evento al bus de memoria. El servidor MOM envía un anuncio al
subscriptor registrado cuando la información está disponible.
pág. 12
6.1.4 Orientados a componentes
Un componente es un «programa que realiza una función específica,
diseñada para operar e interactuar fácilmente con otros componentes y
aplicaciones». El middleware en este caso en una configuración de
componentes. Los puntos fuertes de este middleware es que es configurable
y reconfigurable. La reconfiguración se puede realizar en tiempo de
ejecución, lo que ofrece una gran flexibilidad para satisfacer las necesidades
de un gran número de aplicaciones.
Agentes
Los agentes son un tipo de middleware que posee varios componentes:
 Entidades. Pueden ser objetos o procesos.
 Medios de comunicación. Pueden ser canales, tuberías, etc.
 Leyes. Identifican la naturaleza interactiva de los agentes. Pueden ser la
sincronización o el tipo de esquema.
Las ventajas de los middlewares agentes son que la capacidad de éstos para
realizar una gran cantidad de tareas en nombre del usuario y para cubrir una
amplia gama de estrategias basadas en el entorno que les rodea. Sin
embargo su implementación es complicada debido a la complejidad y
dificultades dadas por las operaciones que manejan.
6.2 CATEGORIA DE APLICACION
La clasificación por aplicación incluye los middlewares que son ajustados para
aplicaciones específicas.
6.2.1 Middleware para acceso a información (DAM, Data Access middleware)
Los middlewares para acceso a información tienen la característica de poder
interactuar con diversas fuentes de datos. En este tipo de middleware se
encuentran los que procesan transacciones, gateways de bases de datos y
sistemas distribuidos de transacción/procedimiento.
Sus ventajas residen en la comunicación que tienen entre múltiples fuentes
de datos, la conversión del lenguaje de programación de la aplicación a un
lenguaje aceptado por la fuente de datos de destino y la capacidad de
respuesta en un formato y lenguaje aceptable para el solicitante.
pág. 13
6.2.2 Middleware de escritorio
Los middlewares de escritorio pueden hacer variaciones en la presentación
de la información pedida por el usuario por aplicaciones de rastreo y
asistencia, controlar cualquier servicio de transporte y proveer una copia de
seguridad y otras operaciones de fondo. Otras pueden ser manutención y
gráficas, ordenamientos, directorios de servicios, manejo de información de
la base de datos, manejo de procesos, calendarización de trabajos,
notificación de eventos de servicios, manejo de instalación de software,
servicios de cifrado y control de accesos.
6.2.3 Middlewares basados en la web
Este tipo de middleware asiste al usuario con la navegación web, el uso de
interfaces que le permiten encontrar páginas de su interés y detectar
cambios de interés del usuario basado en su historial de búsquedas. Provee
de un servicio de identificación para un gran número de aplicaciones y
comunicación entre procesos independiente del sistema operativo, protocolo
de red y plataforma de hardware. Los middlewares que se encuentran
fuertemente unidos a la red se llaman servidores de aplicaciones, ya que
mejoraran el rendimiento, disponibilidad, escalabilidad, seguridad,
recuperación de información, y soportan la administración colaborativa y su
uso. Los middlewares pueden contactar directamente a la aplicación
ganando mejor comunicación entre el servidor y el cliente. Otros servicios
importantes dados por este tipo de middleware son servicios de directorios,
correos electrónicos, cadenas de suministros de gran tamaño, accesos
remotos a información, descarga de archivos, accesos a programas y acceso a
aplicaciones remotas.
6.2.4 Middleware a tiempo real
La información en tiempo real es caracterizada porque la información
correcta en un instante puede no serlo en otro. Los middlewares en tiempo
real soportan las peticiones sensibles al tiempo y políticas de planificación.
Esto se realiza con servicios que mejoran la eficiencia de las aplicaciones de
usuario. Los middlewares en tiempo real se pueden dividir en diferentes
aplicaciones:
 Aplicación de base de datos en tiempo real.
 Sensor de procesamiento.
 Transmisión de información.
pág. 14
La información que pasa a través de un middleware en tiempo real se ha
incrementado dramáticamente con la introducción de internet, redes
inalámbricas, y las nuevas aplicaciones basadas en la difusión.
Las ventajas de este tipo de middleware son que proveen un proceso de
decisión que determina el mejor criterio para resolver procesos sensibles al
tiempo, y la posibilidad de ayudar a los sistemas operantes en la localización
de recursos cuando tienen tiempos límites de operación.
Los middlewares multimedia son una rama mayor en los middlewares en
tiempo real. Estos pueden manejar una gran variedad de información. Estos
tipos pueden ser textos, imágenes de todo tipo (GPS, imágenes, etc.),
procesadores de lenguajes naturales, música y video. La información debe
ser recopilada, integrada y entonces enviada al usuario sensible del tiempo.
Los dispositivos multimedia pueden incluir una mezcla de dispositivos tanto
físicos (parlantes, cámaras, micrófono) como lógicos.
6.2.5 Middlewares especialistas
En muchos casos los middlewares proveen una tarea muy específica que no
se puede ajustar a las categorías anteriores. Un ejemplo serían middlewares
médicos.
7. SERVICIOS MIDDLEWARE
Dentro de los principales servicios que se pueden ofrecer con una plataforma
middleware se encuentran los siguientes:
 Administración de Objetos: Soporta desde simples tipos de datos hasta grandes
volúmenes de información.
 Administración de Documentos: Usa el servicio de administración de objetos y
además nombra y organiza documentos. Soporta el lenguaje de fórmulas (lenguaje
de script para construir aplicaciones de usuarios).
 Seguridad: soporta encripción, firmas digitales y control de acceso discrecional.
 Indexamiento: Suministra acceso indexado tanto a resúmenes como a contenidos
completos de documentos. Opera con herramientas de recuperación basadas en
contenido y descriptores de documentos
 Mensajería: soporta direccionamiento y transporte de correos, incluyendo
direccionamientos a grupos de nombres y nombres jerárquicamente organizados.
 Eventos: Soportar notificación dinámica a través de mensajes de correo o registro
de Bitácora (Log).
 Registro (Logging): Para auditar eventos.
 Nombrado: Soporta enlaces Cliente/Servidor y lo integra con servicios de transporte
y seguridad.
pág. 15
 Administración del Sistema: Soporta control de administración desde consolas
remotas.
Además de lo anterior, los siguientes componentes podrían ser servicios Middleware:
 Administración de Presentaciones: Administrador de formas, administrador de
gráficos, enlazador de hipermedios y administrador de impresión.
 Computación: Ordenamientos, servicios matemáticos de cálculos, servicios de
internacionalización (para manipulación de alfabetos y caracteres).
 Administración de la Información: Servidor de Directorios, Administrador de Logs,
administrador de archivos, administrador de registros, sistemas de bases de datos
relacionales, sistemas de bases de datos orientadas a objetos, administrador de
bodegas de datos.
 Comunicaciones: Mensajería Peer-to-Peer (P2P), Llamadas a procesos remotos
(RPC), colas de mensajes, correo electrónico, intercambio electrónico de datos (EDI).
 Administración de Sistemas: Servicio de notificación de eventos, servicios de
contabilidad, administrador de la configuración de dispositivos, administrador de
instalación de software, detector de fallas, coordinador de recuperaciones.
8. TIPOS DE MIDDLEWARE
8.1 SOFTWARE INTERMEDIO GENERAL
Servicios generales que requieren todos los clientes y servidores, por ejemplo:
software para las comunicaciones usando el TCP/IP, software parte del sistema
operativo que, por ejemplo, almacena los archivos distribuidos, software de
autenticación, el software intermedio de mensajes de clientes a servidores y
viceversa.
8.2 SOFTWARE INTERMEDIO DE SERVICIOS
Software asociado a un servicio en particular, por ejemplo: software que permite a
dos BD conectarse a una red cliente/servidor (ODBC: Conectividad abierta de BD),
software de objetos distribuidos, por ejemplo la tecnología CORBA permite que
objetos distribuidos creados en distintos lenguajes coexistan en una misma red
(intercambien mensajes), software intermedio para software de grupo, software
intermedio asociado a productos de seguridad específicas (Conexiones Seguras:
Sockets), etc.
pág. 16
9. APLICACIONES
Los servicios de middleware proporcionan un conjunto más funcional de la API s para
permitir una aplicación a:
 Localizar claramente a través de la red, proporcionando así una interacción con otro
servicio o aplicación
 Los datos filtrados para que sean utilizables en un ambiente público a través de
anonymization process para la protección de la privacidad (por ejemplo)
 Ser independiente del servicio de red
 Ser fiable y siempre disponible
 Añadir los atributos complementarios como semántica en comparación con el
sistema operativo y servicios de red.
Middleware ofrece algunas ventajas únicas tecnológicas para los negocios y la
industria. Por ejemplo, los sistemas tradicionales de bases de datos suelen ser
desplegados en entornos cerrados, donde los usuarios acceden al sistema sólo a través
de una red restringida o intranet (por ejemplo, red interna de una empresa). Con el
crecimiento de la World Wide Web, los usuarios pueden acceder a prácticamente
cualquier base de datos para las que tengan derechos de acceso adecuados desde
cualquier parte del mundo. Middleware aborda el problema de diferentes niveles de
interoperabilidad entre las estructuras de base de datos diferente. Middleware facilita
el acceso a la herencia de un sistema de gestión de bases de datos (DBMS) o
aplicaciones a través de un servidor web, sin tener en cuenta las características
específicas de base de datos.
Las empresas frecuentemente utilizan las aplicaciones de middleware para vincular la
información de bases de datos de sus departamentos, tales como nóminas, ventas y
contabilidad, o bases de datos alojadas en múltiples localizaciones geográficas.5 En el
mercado de la salud que es altamente competitivo, los laboratorios hacen un amplio
uso de aplicaciones de middleware para minería de datos y sistema informático del
laboratorio (LIS), y para combinar los sistemas de información durante fusiones de
hospitales. Los Middleware ayudan a reducir la brecha entre LISs separados en una red
de salud recién formado a raíz de una compra del hospital.6
Los desarrolladores de redes inalámbricas pueden utilizar middleware para afrontar los
retos asociados a los de sensores inalámbricos de red (WSN), o tecnologías WSN. La
implementación de una aplicación de middleware permite WSN desarrolladores. Para
integrar los sistemas operativos y hardware con la amplia variedad de aplicaciones
diferentes que están disponibles actualmente.
Los middlewares pueden ayudar a los desarrolladores de software a no tener que
escribir APIs para todos los programas de control, que actúa como una interfaz de
pág. 17
programación independiente para sus aplicaciones. Para la Internet del Futuro, el
funcionamiento de la red a través del monitoreo de tráfico en escenarios multi-
dominio, utilizando herramientas de mediación (middleware) es una poderosa ayuda,
ya que permiten operadores, investigadores y proveedores de servicios para supervisar
Calidad de servicio y analizar los eventuales fracasos en servicio de telecomunicaciones.
Por último, el comercio electrónico utiliza middleware para ayudar en el manejo de
transacciones rápidas y seguras a través de muchos tipos diferentes de entornos
informáticos.9 En resumen, el middleware se ha convertido en un elemento crítico en
una amplia gama de industrias, gracias a su capacidad de reunir los recursos a través de
diferentes redes o plataformas de computación.
En 2004 los miembros de la Unión Europea de Radiodifusión (UER), han realizado un
estudio de middleware con respecto a la integración de sistemas en entornos de
difusión. Se trataba de sistema de expertos en ingeniería de diseño de 10 principales
cadenas europeas, se trabajó durante un período de 12 meses para entender el efecto
de productos, principalmente de software, basado en técnicas de producción de
medios de comunicación y el diseño del sistema de radiodifusión. Los informes
resultantes 3300S Tecnología 3300 y Tech fueron publicados y están disponibles
gratuitamente desde el sitio web de la UER.
9.1 VENTAJAS Y CAMPOS DE APLICACION DEL MIDDLEWARE
Entre las principales ventajas que se obtienen al utilizar el middleware se
encuentran:
 Simplifica el proceso de desarrollo de aplicaciones al independizar los entornos
propietarios.
 Permite la interconectividad de los diferentes Sistemas de Información de una
organización.
 Proporciona mayor control del negocio al poder contar con información
procedente de distintas plataformas sobre el mismo soporte.
 Facilita el desarrollo de sistemas complejos con diferentes tecnologías y
arquitecturas.
Dentro de los inconvenientes más importantes se des tacan la mayor carga de
máquina necesaria para que puedan funcionar.
Los sistemas middleware tienen un amplio rango de aplicaciones, de los cuales se
describirán los más importantes:
pág. 18
9.1.1 Migración de los Sistemas Host
Reingeniería de Aplicaciones
Toda aplicación empresarial debería diseñarse en base a módulos
intermedios middleware encargados de la comunicación entre el ordenador
personal y el host. Con el uso de middleware se puede desarrollar una
aplicación sin tener en cuenta los futuros cambios tecnológicos que puedan
sufrir los sistemas host. Si el sistema host cambia, o las aplicaciones
de host se migran a plataformas de ordenadores personales, todo lo que se
necesita es un nuevo módulo middleware. La interfaz de usuario, la lógica y
el código interno permanecen sin cambios. Por ejemplo, si el equipo lógico
del sistema host se traslada desde el mainframe a una base de datos de
plataforma PC ejecutándose en un servidor de archivos, sólo hay que
sustituir el módulo de middleware de forma que realice llamadas SQL.
9.1.2 Interconectividad
Uno de los usos más importantes de las herramientas de middleware es la de
facilitar la interconectividad de los diferentes sistemas de una organización
integrando las diferentes islas de información departamentales.
9.1.3 Arquitectura orientada a objetos distribuidos
El concepto de middleware permite también independizar los servicios
proporcionados por diferentes objetos que se encuentran en una red
proporcionando una red de objetos independientes e interconectados entre
sí.
9.1.4 Arquitectura cliente/servidor
La utilización de middleware permite desarrollar aplicaciones en arquitectura
cliente servidor independizando los servidores y clientes, facilitando la
interrelación entre ellos y evitando dependencias de tecnologías
propietarias.
Como se puede apreciar, la tecnología emergente middleware está
constituyéndose en una plataforma fundamental para la operación de los
sistemas en las organizaciones. En el capítulo uno de la tercera unidad se
realizará una exposición detallada de uno de los sistemas Middleware de
mayor uso actualmente, el sistema operativo distribuido CORBA.
pág. 19
10. ¿PARA QUE USAR MIDDLEWARE?
Dadas dos aplicaciones que se quieren conectar, se usa para resolver la comunicación
entre los procesos, si no hay Middleware se complica el desarrollo de las aplicaciones
pues se debe programar módulos de bajo nivel y esté desarrollo se repite para cada
aplicación a conectar.
Middleware permite realizar está conexión a través de interfaces de alto nivel por lo
que permite ver un procedimiento remoto cómo si fuera local.
Algunos de los ejemplos de usó pueden ser los siguientes:
 Cliente/ Servidor en la misma máquina: se usa en sistemas de pc en pequeñas
oficinas, en la casa, etc.
 C/S a pequeña escala: aplicación clásica en una LAN con un único servidor.
 C/ S a gran escala: Esquema multiservidor, que da imagen de un único sistema.
 C/ S altamente distribuido: cada máquina es cliente y es servidor, así negocia con
las otras máquinas mediante agentes.
Voy a hablar un poco de los servicios Middleware de IBM ya que te ofrecen promover
una combinación de técnicas de optimización e innovación para que pueda ejecutar TI
de una forma eficiente. IBM te ofrece algunos servicios de Middleware cómo son:
 Servicios de integración de SOA de IBM.
 Servicios de infraestructura de aplicaciones.
 Servicios On Demand.
 Mejorar la calidad y aprovechar recursos.
11. MIDDLEWARES DE LAS TECNOLOGIAS INDICADAS
 Oracle: es un sistema de gestión de base de datos objeto-relacional (o ORDBMS
por el acrónimo en inglés de Object-Relational Data Base Management System),
desarrollado por Oracle Corporation.
11.1 SOLUCIONES QUE ENTREGAN LOS MIDDLEWARES DE ORACLE
 Arquitectura Orientada a Servicios y Gestión de Procesos de Negocio.
 Grid de Aplicaciones para una Eficiencia Extrema.
 Gestión de Identidad Centrada en las Aplicaciones.
 Portales Enterprise 2.0, Gestión de Contenido y Colaboración.
 Inteligencia de Negocio Generalizada y Soporte Estratégico para la Toma de
Decisiones.
pág. 20
11.2 CARACTERISTICAS DE LOS MIDDLEWARES DE ORACLE
 Completo.
 Integrado.
 Apto para la conexión en caliente.
11.3 ¿POR QUE HOY EN DIA SON NECESARIOS LOS MIDDLEWARES DE ORACLE?
Oracle Fusion Middleware 11g es la base de infraestructuras de aplicaciones de
mayor aceptación hoy en día. Permite a las empresas crear y utilizar
aplicaciones empresariales ágiles e inteligentes, y al mismo tiempo potenciar al
máximo la eficacia informática aprovechando plenamente las arquitecturas
modernas de hardware y software.
11.4 TIPOS DE MIDDLEWARE DE ORACLE
 El mejor rendimiento del sector Oracle WebLogic Suite 11g.
 Oracle WebCenter: La plataforma de participación de usuarios para el negocio
social.
 Agilidad empresarial superior Oracle SOA Suite 11g.
 Oracle Identity Management 11g para los mejores productos de seguridad y
cumplimiento de su categoría.
 El diseño y desarrollo más unificado Oracle JDeveloper 11g.
 Herramientas punteras para la creación de aplicaciones empresariales con
funciones completas.
11.5 ORGANIGRAMA MIDDLEWARE DE ORACLE
pág. 21
12. ORGANIGRAMAMIDDLEWAREAPLICADO A LOS SISTEMAS
DISTRIBUIDOS
13. ALGUNOS PROYECTOS MIDDLEWARE
13.1 MIDDLEWARE PARA SISTEMAS UBICUOS BASADO EN TECNOLOGÍA DE
INTERNET 2
Este proyecto tiene como misión investigar como las tecnologías de red
asociadas a Internet 2 sustentan adecuadamente o no aplicaciones de cómputo
ubicuo basadas en agentes autónomos para escenarios académicos o de apoyo
a la academia. El cómputo ubicuo requiere de servicios de red avanzados como:
un gran espacio de direcciones; sustento eficaz a la movilidad; sustento eficaz a
la identificación, autentificación y confidencialidad de la información
transmitida; sostén eficaz a la auto-configuración de los parámetros operativos
de la red; y sustento eficaz de comunicaciones multicast y anycast.
pág. 22
Reporte:
De los seis objetivos planteados a la fecha se han concluido cuatro (4): del OB1
al OB4. Los otros dos están en un 75% de avance. Como resultado de la
culminación de los primeros cuatro objetivos se han escrito tres (3) artículos de
investigación, un (1) artículo de divulgación en revista electrónica internacional,
y cinco (5) participaciones para Reuniones de CUDI. Asimismo, están por
concluirse tres (3) tesis de licenciatura en Ciencias Computacionales, y una (1)
de maestría en Ciencias Computacionales y se presentó una demostración de
aplicación en la Reunión de CUDI de Primavera 2004. También, cuatro becarios
de los programas del Verano de la Investigación Científica 2004 hicieron sus
estancias de investigación dentro del proyecto. De los cinco artículos de
investigación, uno fue presentado en el Taller de Cómputo Móvil del Encuentro
Nacional de Cómputo 2003, (ENC’03) de la Sociedad Mexicana de Ciencia de la
Computación; otro fue aceptado y será presentado en la versión 2004 del Taller
antes mencionado; y el resto han sido sometidos en diversos congresos de
especialidad, pero sin lograr ser aceptados, aunque siempre recibimos
comentarios positivos (los cuales se incluyen en los anexos.).
13.2 MIDDLEWARE GRID Y PUNTO A PUNTO PARA ENTORNOS DE APRENDIZAJE
COOPERATIVO
Objetivos:
 Entornos de Aprendizaje Cooperativo (A.C.): definir las características
esenciales que ha de incorporar una aplicación informática de soporte al
aprendizaje universitario para dar soporte a actividades de A.C.
 Middleware: definir los componentes de una infraestructura de computación
distribuida, basada en los modelos de redes grid, proporcionando servicios
de acceso a los recursos, seguridad, organización y coordinación de procesos
computacionales, para permitir participar a un grupo de gente en una
actividad de aprendizaje cooperativo.
 Planificar, optimizar y reservar recursos en un sistema distribuido con
componentes autónomos y descentralizados, basados en middleware,
usando algoritmos basados en sistemas económicos, redes neuronales, y
sistemas neuro-difusos.
Metodología:
 Análisis de teorías y sistemas existentes, simulación de middleware,
construcción de prototipos de entornos de A.C., y evaluación con usuarios
reales.
pág. 23
CONCLUSION
En la actualidad se presentan diversas problemáticas derivadas de los paradigmas
tecnológicos; por lo cual existe una inmersión de estás impactando directamente a las
organizaciones empresariales y por lo tanto a la sociedad, refiriéndonos de este modo a
los Middlewares, que ayudan a dar solución a problemas de conectividad entre diferentes
aplicaciones, e inconvenientes de interoperabilidad, simplificando la interacción, y
cumpliendo un rol estratégico en el crecimiento delas organizaciones hacia el mundo
distribuido e integrado y permitiendo extenderla inversión en los sistemas propietarios y
cliente/ servidor, facilitando la conexión proveyendo la misma docilidad que brindan los
sistemas “Back-End” a Internet. Las aplicaciones Middlewares continuarán creciendo a
medida que se implementen más tecnologías heterogéneas, por lo que se puede apreciar,
las tecnologías que serán de mayor valor estratégico las encontraremos en los servidores
de aplicaciones orientados a la Web, ORBs, TPMs y MOMs. Se vislumbra una nueva
perspectiva para que Middleware continúe siendo la capa invisible que haga más fácil el
desarrollo futuro. Aunque, la paradoja es que, mientras los Middlewares facilitan el
desarrollo multiplataforma, no existe mucha facilidad para realizar la conexión entre ellos.
Lo que significa que sectores o departamentos de sistemas de las organizaciones deberían
tomar con seriedad las tecnologías de Middleware, además de construir una apropiada
infraestructura en post de hacer frente a la dinámica y complejidad del mundo de
Internet, por lo que sin la existencia de los Middlewares, cierto tipo de actividades a nivel
de redes serían imposibles. En un futuro no muy lejano, habrá aplicaciones cada vez más
poderosas y potentes y más Middlewares van a ser necesitados.
pág. 24
BIBLIOGRAFIA
Páginas Web:
 https://es.wikipedia.org/wiki/Middleware
 https://www.codejobs.biz/es/blog/2013/08/21/que-es-un-middleware
 http://sistemasdistribuidosjosecastro.blogspot.pe/2016/05/v-
behaviorurldefaultvmlo.html
 https://es.slideshare.net/matiasyimak/middleware-15166587
 http://www.monografias.com/trabajos16/sistemas-distribuidos/sistemas-
distribuidos.shtml#MIDDLE
 https://www.gsic.uva.es/proyectos.php?lang=es&pId_p=1
 http://www.cudi.mx/proyectos/middleware-para-sistemas-ubicuos-basado-en-
tecnolog%C3%ADa-de-internet-2

Weitere ähnliche Inhalte

Was ist angesagt?

Procesos e Hilos en los Sistemas Operativos
Procesos e Hilos en los Sistemas OperativosProcesos e Hilos en los Sistemas Operativos
Procesos e Hilos en los Sistemas OperativosEmmanuel Fortuna
 
Componentes y evolucion del modelado de negocios(investigacion)
Componentes y evolucion del modelado de negocios(investigacion)Componentes y evolucion del modelado de negocios(investigacion)
Componentes y evolucion del modelado de negocios(investigacion)Anel Sosa
 
Software caja negra y caja blanca
Software caja negra y caja blancaSoftware caja negra y caja blanca
Software caja negra y caja blancaStudentPc
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidosVictor Reyes
 
Técnicas para la Obtención de Requerimientos
Técnicas para la Obtención de RequerimientosTécnicas para la Obtención de Requerimientos
Técnicas para la Obtención de RequerimientosJuan Carlos Olivares Rojas
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidosChristian19121
 
Sincronización entre procesos
Sincronización entre procesosSincronización entre procesos
Sincronización entre procesosIchinose 11
 
Sistema De Gestión De Base De Datos
Sistema De Gestión De Base De DatosSistema De Gestión De Base De Datos
Sistema De Gestión De Base De DatosGuillermo Chirinos
 
Analisis y determinacion de requerimientos
Analisis y determinacion de requerimientosAnalisis y determinacion de requerimientos
Analisis y determinacion de requerimientosYesith Valencia
 
Requerimientos no funcionales
Requerimientos no funcionalesRequerimientos no funcionales
Requerimientos no funcionalesAngel Minga
 
Tecnicas y herramientas para el desarrollo de software
Tecnicas y herramientas para el desarrollo de softwareTecnicas y herramientas para el desarrollo de software
Tecnicas y herramientas para el desarrollo de softwareReynaldo Mayz
 
Arquitectura Multiprocesadores
Arquitectura Multiprocesadores Arquitectura Multiprocesadores
Arquitectura Multiprocesadores JUANR1022
 

Was ist angesagt? (20)

Metodología CommonKADS
Metodología CommonKADSMetodología CommonKADS
Metodología CommonKADS
 
Procesos e Hilos en los Sistemas Operativos
Procesos e Hilos en los Sistemas OperativosProcesos e Hilos en los Sistemas Operativos
Procesos e Hilos en los Sistemas Operativos
 
Componentes y evolucion del modelado de negocios(investigacion)
Componentes y evolucion del modelado de negocios(investigacion)Componentes y evolucion del modelado de negocios(investigacion)
Componentes y evolucion del modelado de negocios(investigacion)
 
Software caja negra y caja blanca
Software caja negra y caja blancaSoftware caja negra y caja blanca
Software caja negra y caja blanca
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
 
Técnicas para la Obtención de Requerimientos
Técnicas para la Obtención de RequerimientosTécnicas para la Obtención de Requerimientos
Técnicas para la Obtención de Requerimientos
 
control de concurrencia
control de concurrenciacontrol de concurrencia
control de concurrencia
 
Comparticion de recursos- Sistemas Distribuidos
Comparticion de recursos- Sistemas Distribuidos Comparticion de recursos- Sistemas Distribuidos
Comparticion de recursos- Sistemas Distribuidos
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
 
Metodologia orientada a objeto
Metodologia orientada a objetoMetodologia orientada a objeto
Metodologia orientada a objeto
 
Tecnología Orientada a Objetos
Tecnología Orientada a ObjetosTecnología Orientada a Objetos
Tecnología Orientada a Objetos
 
Sincronización entre procesos
Sincronización entre procesosSincronización entre procesos
Sincronización entre procesos
 
Sistema de Archivos Distribuidos
Sistema de Archivos DistribuidosSistema de Archivos Distribuidos
Sistema de Archivos Distribuidos
 
Arquitectura de sistemas distribuidos
Arquitectura de sistemas distribuidosArquitectura de sistemas distribuidos
Arquitectura de sistemas distribuidos
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
Sistema De Gestión De Base De Datos
Sistema De Gestión De Base De DatosSistema De Gestión De Base De Datos
Sistema De Gestión De Base De Datos
 
Analisis y determinacion de requerimientos
Analisis y determinacion de requerimientosAnalisis y determinacion de requerimientos
Analisis y determinacion de requerimientos
 
Requerimientos no funcionales
Requerimientos no funcionalesRequerimientos no funcionales
Requerimientos no funcionales
 
Tecnicas y herramientas para el desarrollo de software
Tecnicas y herramientas para el desarrollo de softwareTecnicas y herramientas para el desarrollo de software
Tecnicas y herramientas para el desarrollo de software
 
Arquitectura Multiprocesadores
Arquitectura Multiprocesadores Arquitectura Multiprocesadores
Arquitectura Multiprocesadores
 

Ähnlich wie Middleware en los sistemas distribuidos

Ähnlich wie Middleware en los sistemas distribuidos (20)

sistemas operativos 2
sistemas operativos 2sistemas operativos 2
sistemas operativos 2
 
Sistemas operativos 2
Sistemas operativos 2Sistemas operativos 2
Sistemas operativos 2
 
Jacinto 1
Jacinto 1Jacinto 1
Jacinto 1
 
Arquitectura software
Arquitectura softwareArquitectura software
Arquitectura software
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
 
SISTEMAS OPERATIVOS
SISTEMAS OPERATIVOS SISTEMAS OPERATIVOS
SISTEMAS OPERATIVOS
 
Sistemas operativos
Sistemas operativos Sistemas operativos
Sistemas operativos
 
Middleware
MiddlewareMiddleware
Middleware
 
Middleware
MiddlewareMiddleware
Middleware
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
 
Escalabilidad
EscalabilidadEscalabilidad
Escalabilidad
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
 
Modbus eai u5
Modbus eai u5Modbus eai u5
Modbus eai u5
 
Desarrollo de aplicaciones web distribuidas.
Desarrollo de aplicaciones web distribuidas.Desarrollo de aplicaciones web distribuidas.
Desarrollo de aplicaciones web distribuidas.
 
Unidad 1. caracterizacion de los sistemas distribuidos
Unidad 1.  caracterizacion de los sistemas distribuidosUnidad 1.  caracterizacion de los sistemas distribuidos
Unidad 1. caracterizacion de los sistemas distribuidos
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
 
Yamilet gonzalez
Yamilet gonzalezYamilet gonzalez
Yamilet gonzalez
 
Clase De Fds22
Clase De Fds22Clase De Fds22
Clase De Fds22
 
Puntos extra (sistemas distribuidos)
Puntos extra (sistemas distribuidos)Puntos extra (sistemas distribuidos)
Puntos extra (sistemas distribuidos)
 

Kürzlich hochgeladen

12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdfedwinmelgarschlink2
 
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAdanielaerazok
 
Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webDecaunlz
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenajuniorcuellargomez
 
Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenadanielaerazok
 
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señorkkte210207
 
Las redes sociales en el mercado digital
Las redes sociales en el mercado digitalLas redes sociales en el mercado digital
Las redes sociales en el mercado digitalNayaniJulietaRamosRa
 
Guia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdfGuia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdflauradbernals
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfisrael garcia
 

Kürzlich hochgeladen (9)

12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf
 
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
 
Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la web
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalena
 
Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalena
 
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
02. Mr. Spencer (T.L. Sawn).pdf.libro de un señor
 
Las redes sociales en el mercado digital
Las redes sociales en el mercado digitalLas redes sociales en el mercado digital
Las redes sociales en el mercado digital
 
Guia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdfGuia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdf
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
 

Middleware en los sistemas distribuidos

  • 1. pág. 1 UNIVERSIDAD NACIONAL DE LA AMAZONIA PERUANA FACULTAD DE INGENIERIA DE SISTEMAS E INFORMATICA PROCESAMIENTO DISTRIBUIDO TRABAJO MONOGRAFICO TEMA : - Middleware En Los Sistemas Distribuidos DOCENTE : - Ing. Cesar Augusto Palacios Chavez ALUMNO : - Juan Carlos AlcaArequi - CiroAlcaArequi - Roger Jim PadillaRengifo NIVEL : V CICLO : X IQUITOS – PERU – 2017
  • 2. pág. 2 DEDICATORIA El presente trabajo monográfico está dedicado a nuestros padres que son nuestra mayor inspiración para seguir adelante.
  • 3. pág. 3 AGRADECIMIENTO Queremos agradecer a Dios por estar presente en nuestras vidas y por ser nuestra guía. Queremos agradecer al Ing. Cesar Augusto Palacios Chavez por darnos la oportunidad de conocer acerca del tema Middleware en los Sistemas Distribuidos. Queremos agradecer a nuestros Padres por estar presente en nuestras vidas.
  • 4. pág. 4 INDICE INTRODUCCIÓN………………………………………………………………………………………………….…………………… 05 OBJETIVOS………………………………………………………………………………………………………………………….…… 06 1. HISTORIA DE MIDDLEWARE.………………………………………………………………………….….................…07 2. DEFINICION DEMIDDLEWARE………….………………………………………………………..……..……………….. 07 3. CARACTERISTICASDEMIDDLEWARE………………………………………………………………………….……..… 08 4. ELEMENTOS DE MIDDLEWARE………………….………………………………………………………………………… 08 5. FUNCIONES DE MIDDLEWARE…………….…………………………………………………………..………………….. 09 6. TAXONOMIA DE LOS SOFTWAREMIDDLEWARE……………………………………………………………….…. 10 6.1 CATEGORIA DE INTEGRACION……………………………………………………………………………………... 10 6.1.1 ORIENTADOSA PROCEDIMIENTOO PROCESOS…………………..………………………….....10 6.1.2 ORIENTADOSA OBJETOS………………………………………………………………………………….… 11 6.1.3 ORIENTADOSA MENSAJES……………………………………………………………………………….… 11 6.1.4 ORIENTADOSA COMPONENTES…………………………………………………………………….…… 12 6.2 CATEGORIA DE APLICACION……………………………………………………………………………….……….. 12 6.2.1 MIDDLEWARE PARA ACCESOA INFORMACION…………………………………….…………….. 12 7. SERVICIOSMIDDLEWARE……………………………………………………………………………………………...….…. 14 8. TIPOSDE MIDDLEWARE……………………………………………………………………………………..………….….… 15 8.1 SOFTWAREINTERMEDIO GENERAL…………………………………………………..…….…………………... 15 8.2 SOFTWAREINTERMEDIO DE SERVICIOS ……………………………………………….………………….….. 15 9. APLICACION……………………………………………………………………………………………………………..………….. 16 9.1 VENTAJASYCAMPOS DE APLICACION DELMIDDLEWARE……….………..……….………………... 17 9.1.1 MIGRACION DE LOS SISTEMAS HOST……………………..………..………….……….……….... 18 9.1.2 INTERCONECTIVIDAD.……..………………………………………………………..….………….………… 18 9.1.3 ARQUITECTURA ORIENTADA A OBJETOS DISTRIBUIDOS.……………………………..……… 18 9.1.4 ARQUITECTURA CLIENTE/SERVIDOR……………………..……….………….………….……….…… 18 10. ¿PARA QUE USAR MIDDLEWARE?............................................................................................19 11. MIDDLEWARES DE LAS TECNOLOGIASINDICADAS…………………………….…………………..….…….….19 11.1 SOLUCIONESQUE ENTREGAN LOS MIDDLEWARES DE ORACLE….………………………………. 19 11.2 CARACTERISTICASDELOS MIDDLEWARES DE ORACLE…………………..…………………………... 20 11.3 ¿PORQUE HOY EN DIA SON NECESARIOSLOS MIDDLEWARES DE ORACLE?..................20 11.4 TIPOSDE MIDDLEWARE DE ORACLE…………………………………………………………………………… 20 11.5 ORGANIGRAMA MIDDLEWARE DE ORACLE………………………………………………………………… 20 12. ORGANIGRAMA MIDDLEWARE APLICADOA LOS SISTEMAS DISTRIBUIDOS…………………………. 21 13. ALGUNOS PROYECTOSMIDDLEWARE………………………………………………………………………………….. 21 13.1 MIDDLEWARE PARA SISTEMASUBICUOS BASADOEN TECNOLOGIA DE INTERNET2….... 21 13.2 MIDDLEWARE GRID Y PUNTOA PUNTO PARA ENTORNOSDE APRENDIZAJE COOPERATIVO………………………………………………………………………………………………………….…… 22 CONCLUSION……………………………………………………………………………………………………………………………... 23 BIBLIOGRAFIA……………………………………………………………………………………………………………………….……..24
  • 5. pág. 5 INTRODUCCION Como elemento característico de los sistemas distribuidos, surge el concepto de “Middleware”, la capa de software que se ubica entre el sistema operativo y las aplicaciones de los usuarios. Middleware es un software de conectividad, es el software distribuido requerido para facilitar las interacciones cliente-servidor se denomina Middleware. El API que usan los clientes para pedir un servicio a algún servidor, la transmisión física de la petición vía red, y el regreso de resultados desde el servidor al cliente. Algunos ejemplos de Middleware estándar para algunos dominios incluyen: ODBC, Lotus groupware, SSL y http. Hay muchas capas dentro del Middleware, por ejemplo, la capa de protocolos de recursos y conectividad, y una capa de servicios colectivos que es superior.
  • 6. pág. 6 OBJETIVOS OBJETIVO GENERAL  Desarrollar middlewares generales y en concreto de los middlewares de publicación suscripción en tiempo real. Se propone estudiar los trabajos científicos sobre los estándares para la distribución de información en tiempo real y técnicas de middleware relativas a anotaciones, interceptación de llamadas, sistemas de protocolos dinámicos, etc. OBJETIVO ESPECIFICO  Desarrollo de un sistema de marcado (anotaciones en Java o atributos en C#) que permita la descripción de los datos sin necesidad de instrumentos externos.  Desarrollo de un sistema de serialización dinámico para la adaptación y generación dinámica de protocolos.  Desarrollo de un sistema de mensajería, es decir, una aplicación de prueba que permita probar la bondad de la solución propuesta.
  • 7. pág. 7 MIDDLEWARE EN LOS SISTEMAS DISTRIBUIDOS 1. HISTORIA DE MIDDLEWARE El origen de la palabra middleware se remonta al año 1968, en donde la palabra fue usada durante la '1968 NATO Software Engineering Conference',2 siendo una idea de cómo conectar el nuevo software con sistemas más antiguos. Durante las décadas previas a los años 1990, fue solamente descrito como un software para la gestión de conexión en redes, pero para cuando las tecnologías en redes alcanzaron una penetración y visibilidad suficiente, el software middleware' había evolucionado en un conjunto de paradigmas y servicios. De esta forma se estaba ofreciendo una manera más fácil, robusta y controlable, para construir aplicaciones distribuidas. 2. DEFINICION DEMIDDLEWARE  Middleware o lógica de intercambio de información entre aplicaciones ("interlogical") es un software que asiste a una aplicación para interactuar o comunicarse con otras aplicaciones, o paquetes de programas, redes, hardware y/o sistemas operativos.  Simplifica el trabajo en la tarea de generar las conexiones en los sistemas distribuidos.  Provee una solución que mejora la QoS, seguridad, envío de mensajes, directorio de servicio.
  • 8. pág. 8 3. CARACTERISTICAS DE MIDDLEWARE  Servicios de middleware proporcionar un conjunto más funcional de la API de SO y servicios de red para permitir que una aplicación.  Búsqueda transparente a través de la red, proporcionando una interacción con otra aplicación o servicio.  Ser independientes de los servicios de red.  Ser confiable y disponible.  Ampliación en la capacidad sin perder su función. 4. ELEMENTOS DE MIDDLEWARE El middleware está compuesto de agentes de software que generalmente actúan entre el sistema operativo y las aplicaciones, con la finalidad de proveer comunicación entre diferentes aplicaciones en un sistema distribuido. Las funciones que realiza el middleware dentro de un cluster de servidores (datacenter) son:  Una interfaz única de acceso al sistema, denominada SSI, la cual genera la sensación al usuario de que utiliza un único computador muy potente.  Herramientas para la optimización y mantenimiento del sistema: migración de procesos, checkpoint-restart (congelar uno o varios procesos, mudarlos de servidor y continuar su funcionamiento en el nuevo host), balanceo de carga, tolerancia a fallos, etc.  Escalabilidad: debe poder detectar automáticamente nuevos servidores conectados al cluster para proceder a su utilización.  Existen diversos tipos de middleware, como por ejemplo: MOSIX, OpenMOSIX, Condor, OpenSSI, etc. El middleware recibe los trabajos entrantes al cluster y los redistribuye de manera que el proceso se ejecute más rápido y el sistema n o sufra sobrecargas en un servidor. Esto se realiza mediante políticas definidas en el sistema (automáticamente o por un administrador) que le indican dónde y cómo debe distribuir los procesos, por un sistema de monitorización, el cual controla la carga de cada CPU y la cantidad de procesos en él. El middleware también debe poder migrar procesos entre servidores con distintas finalidades:  Balancear la carga: si un servidor está muy cargado de procesos y otro está ocioso, pueden transferirse procesos a este último para liberar de carga al primero y optimizar el funcionamiento.
  • 9. pág. 9  Mantenimiento de servidores: si hay procesos corriendo en un servidor que necesita mantenimiento o una actualización, es posible migrar los procesos a otro servidor y proceder a desconectar del cluster al primero.  Priorización de trabajos: en caso de tener varios procesos corriendo en el cluster, pero uno de ellos de mayor importancia que los demás, puede migrarse este proceso a los servidores que posean más o mejores recursos para acelerar su procesamiento. 5. FUNCIONES DE MIDDLEWARE La función de middleware es mediar la interacción entre las partes de una o varias aplicaciones, por lo tanto los problemas de arquitectura juegan un papel central en el diseño de middleware. La arquitectura se ocupa de la organización, la estructura general y los patrones de comunicación, tanto para aplicaciones y middleware como para sí mismo. Además de los aspectos arquitectónicos, los principales problemas del diseño de middleware son las relativas a los diversos aspectos de los sistemas distribuidos. Cualquier sistema de middleware se basa en una capa de comunicación que permite a sus diferentes piezas para interoperar. Además, la comunicación es una función que proporciona a las aplicaciones de middleware propio, en el que las entidades comunicantes pueden asumir diferentes roles como cliente-servidor o peer to peer. Middleware permite diferentes modos de interacción como: invocaciones síncronas, paso de mensajes asíncrono, la coordinación a través de objetos compartidos entre otras. Las siguientes son las funciones principales de los middlewares en los sistemas distribuidos:  Ocultación de la distribución, es decir, el hecho de que una aplicación se compone generalmente de muchas partes interconectadas que se ejecutan en ubicaciones distribuidas.  Cómo ocultar la heterogeneidad de los componentes de hardware, sistemas operativos y protocolos de comunicación.  Proporcionar uniformes, estándares, interfaces de alto nivel a los desarrolladores de aplicaciones e integradores, por lo que las aplicaciones pueden ser fácilmente integradas, reutilizadas, adaptadas, y hechas para interoperar.  Suministrar un conjunto de servicios comunes a las diversas funciones de uso general, con el fin de evitar la duplicación de esfuerzos y para facilitar la colaboración entre las aplicaciones.
  • 10. pág. 10 6. TAXONOMIA DE LOS SOFTWARE MIDDLEWARE La taxonomía o clasificación del software middleware puede ser descrita en dos grandes categorías: una de integración y otra de aplicación. Estas poseen a su vez diferentes clases. 6.1 CATEGORIA DE INTEGRACION El tipo de integración que incluyen posee la capacidad de unirse con sistemas heterogéneos. Cada middleware posee diferentes protocolos de comunicación o formas de operar en diferente software. Los tipos de integración se pueden ver como: 6.1.1 Orientados a procedimiento o procesos Los middlewares que son orientados a procesos, utilizan una comunicación sincronizada (como por ejemplo el teléfono). Una de las características de estos, es que utilizan el client stub y el server skeleton. El client stub convierte la petición en un mensaje que es mandado al servidor; luego el server skeleton recibe el mensaje, lo convierte en la petición y llama a la aplicación del servidor donde ésta es procesada. Terminado el procesamiento, ocurre el proceso inverso. El client stub verifica los errores, envía los resultados al software que inició la petición y entonces suspenden el proceso. Las ventajas de estos middlewares es que usan un tipo estándar en nombres de servicios y procesos remotos, pueden retornar respuesta aún con problemas en la red y pueden manejar múltiples tipos de formatos para datos y niveles heterogéneos de sistemas de servicio. Las desventajas son que no poseen escalabilidad, no pueden retornar la información a un programa diferente del que realizó la solicitud (reflexión) y poseen procesos muy rígidos.
  • 11. pág. 11 6.1.2 Orientados a objetos Soportan pedidos de objetos distribuidos. La comunicación entre los objetos puede ser sincronizada, sincronizada diferida o no sincronizada. Soportan múltiples pedidos similares realizados por múltiples clientes en una transacción. La forma de operar es: El objeto cliente llama a un método lógico para obtener un objeto remoto. Un ORB Proxy (también conocido como stub) pone en orden la información (marshalling o serialización) y la transmite a través del agente (broker). El agente actúa como punto medio y contacta con diversas fuentes de información, obtiene sus referentes IDs, recolecta información y, en ocasiones, la reorganiza. El proxy remoto (también conocido como skeleton) desordena (unmarshalling o deserialización) la información que le llega del agente y se la pasa al objeto servidor. El objeto servidor procesa la información y genera un resultado que es devuelto al cliente siguiendo los pasos inversos. Las ventajas son que permiten generar reflexión y escalabilidad, que opera con múltiples tipos de información y estados y que soporta procesos múltiples. Las desventajas consisten en obtener la existencia de vínculos antes de la ejecución y de un código contenedor para algunos sistemas heredados. 6.1.3 Orientados a mensajes (MOM, Message-oriented middleware) Se pueden dividir en dos tipos, espera y publicación/suscripción. El paso de espera se puede dividir en mensaje y espera. El paso de mensaje inicia con que la aplicación envía un mensaje a uno o más clientes, con el MOM del cliente. El servidor MOM, recoge las peticiones de la cola (Message Broker) en un orden o sistema de espera predeterminado. Los actos del servidor MOM son como un router y usualmente no interactúan con estas. El MOM de publicación y suscripción actúa de manera ligeramente diferente, es más orientado a eventos. Si un cliente quiere participar por primera vez, se une al bus de información. Dependiendo de su función, si es como publicador, suscriptor y ambas, este registra un evento. El publicador envía una noticia de un evento al bus de memoria. El servidor MOM envía un anuncio al subscriptor registrado cuando la información está disponible.
  • 12. pág. 12 6.1.4 Orientados a componentes Un componente es un «programa que realiza una función específica, diseñada para operar e interactuar fácilmente con otros componentes y aplicaciones». El middleware en este caso en una configuración de componentes. Los puntos fuertes de este middleware es que es configurable y reconfigurable. La reconfiguración se puede realizar en tiempo de ejecución, lo que ofrece una gran flexibilidad para satisfacer las necesidades de un gran número de aplicaciones. Agentes Los agentes son un tipo de middleware que posee varios componentes:  Entidades. Pueden ser objetos o procesos.  Medios de comunicación. Pueden ser canales, tuberías, etc.  Leyes. Identifican la naturaleza interactiva de los agentes. Pueden ser la sincronización o el tipo de esquema. Las ventajas de los middlewares agentes son que la capacidad de éstos para realizar una gran cantidad de tareas en nombre del usuario y para cubrir una amplia gama de estrategias basadas en el entorno que les rodea. Sin embargo su implementación es complicada debido a la complejidad y dificultades dadas por las operaciones que manejan. 6.2 CATEGORIA DE APLICACION La clasificación por aplicación incluye los middlewares que son ajustados para aplicaciones específicas. 6.2.1 Middleware para acceso a información (DAM, Data Access middleware) Los middlewares para acceso a información tienen la característica de poder interactuar con diversas fuentes de datos. En este tipo de middleware se encuentran los que procesan transacciones, gateways de bases de datos y sistemas distribuidos de transacción/procedimiento. Sus ventajas residen en la comunicación que tienen entre múltiples fuentes de datos, la conversión del lenguaje de programación de la aplicación a un lenguaje aceptado por la fuente de datos de destino y la capacidad de respuesta en un formato y lenguaje aceptable para el solicitante.
  • 13. pág. 13 6.2.2 Middleware de escritorio Los middlewares de escritorio pueden hacer variaciones en la presentación de la información pedida por el usuario por aplicaciones de rastreo y asistencia, controlar cualquier servicio de transporte y proveer una copia de seguridad y otras operaciones de fondo. Otras pueden ser manutención y gráficas, ordenamientos, directorios de servicios, manejo de información de la base de datos, manejo de procesos, calendarización de trabajos, notificación de eventos de servicios, manejo de instalación de software, servicios de cifrado y control de accesos. 6.2.3 Middlewares basados en la web Este tipo de middleware asiste al usuario con la navegación web, el uso de interfaces que le permiten encontrar páginas de su interés y detectar cambios de interés del usuario basado en su historial de búsquedas. Provee de un servicio de identificación para un gran número de aplicaciones y comunicación entre procesos independiente del sistema operativo, protocolo de red y plataforma de hardware. Los middlewares que se encuentran fuertemente unidos a la red se llaman servidores de aplicaciones, ya que mejoraran el rendimiento, disponibilidad, escalabilidad, seguridad, recuperación de información, y soportan la administración colaborativa y su uso. Los middlewares pueden contactar directamente a la aplicación ganando mejor comunicación entre el servidor y el cliente. Otros servicios importantes dados por este tipo de middleware son servicios de directorios, correos electrónicos, cadenas de suministros de gran tamaño, accesos remotos a información, descarga de archivos, accesos a programas y acceso a aplicaciones remotas. 6.2.4 Middleware a tiempo real La información en tiempo real es caracterizada porque la información correcta en un instante puede no serlo en otro. Los middlewares en tiempo real soportan las peticiones sensibles al tiempo y políticas de planificación. Esto se realiza con servicios que mejoran la eficiencia de las aplicaciones de usuario. Los middlewares en tiempo real se pueden dividir en diferentes aplicaciones:  Aplicación de base de datos en tiempo real.  Sensor de procesamiento.  Transmisión de información.
  • 14. pág. 14 La información que pasa a través de un middleware en tiempo real se ha incrementado dramáticamente con la introducción de internet, redes inalámbricas, y las nuevas aplicaciones basadas en la difusión. Las ventajas de este tipo de middleware son que proveen un proceso de decisión que determina el mejor criterio para resolver procesos sensibles al tiempo, y la posibilidad de ayudar a los sistemas operantes en la localización de recursos cuando tienen tiempos límites de operación. Los middlewares multimedia son una rama mayor en los middlewares en tiempo real. Estos pueden manejar una gran variedad de información. Estos tipos pueden ser textos, imágenes de todo tipo (GPS, imágenes, etc.), procesadores de lenguajes naturales, música y video. La información debe ser recopilada, integrada y entonces enviada al usuario sensible del tiempo. Los dispositivos multimedia pueden incluir una mezcla de dispositivos tanto físicos (parlantes, cámaras, micrófono) como lógicos. 6.2.5 Middlewares especialistas En muchos casos los middlewares proveen una tarea muy específica que no se puede ajustar a las categorías anteriores. Un ejemplo serían middlewares médicos. 7. SERVICIOS MIDDLEWARE Dentro de los principales servicios que se pueden ofrecer con una plataforma middleware se encuentran los siguientes:  Administración de Objetos: Soporta desde simples tipos de datos hasta grandes volúmenes de información.  Administración de Documentos: Usa el servicio de administración de objetos y además nombra y organiza documentos. Soporta el lenguaje de fórmulas (lenguaje de script para construir aplicaciones de usuarios).  Seguridad: soporta encripción, firmas digitales y control de acceso discrecional.  Indexamiento: Suministra acceso indexado tanto a resúmenes como a contenidos completos de documentos. Opera con herramientas de recuperación basadas en contenido y descriptores de documentos  Mensajería: soporta direccionamiento y transporte de correos, incluyendo direccionamientos a grupos de nombres y nombres jerárquicamente organizados.  Eventos: Soportar notificación dinámica a través de mensajes de correo o registro de Bitácora (Log).  Registro (Logging): Para auditar eventos.  Nombrado: Soporta enlaces Cliente/Servidor y lo integra con servicios de transporte y seguridad.
  • 15. pág. 15  Administración del Sistema: Soporta control de administración desde consolas remotas. Además de lo anterior, los siguientes componentes podrían ser servicios Middleware:  Administración de Presentaciones: Administrador de formas, administrador de gráficos, enlazador de hipermedios y administrador de impresión.  Computación: Ordenamientos, servicios matemáticos de cálculos, servicios de internacionalización (para manipulación de alfabetos y caracteres).  Administración de la Información: Servidor de Directorios, Administrador de Logs, administrador de archivos, administrador de registros, sistemas de bases de datos relacionales, sistemas de bases de datos orientadas a objetos, administrador de bodegas de datos.  Comunicaciones: Mensajería Peer-to-Peer (P2P), Llamadas a procesos remotos (RPC), colas de mensajes, correo electrónico, intercambio electrónico de datos (EDI).  Administración de Sistemas: Servicio de notificación de eventos, servicios de contabilidad, administrador de la configuración de dispositivos, administrador de instalación de software, detector de fallas, coordinador de recuperaciones. 8. TIPOS DE MIDDLEWARE 8.1 SOFTWARE INTERMEDIO GENERAL Servicios generales que requieren todos los clientes y servidores, por ejemplo: software para las comunicaciones usando el TCP/IP, software parte del sistema operativo que, por ejemplo, almacena los archivos distribuidos, software de autenticación, el software intermedio de mensajes de clientes a servidores y viceversa. 8.2 SOFTWARE INTERMEDIO DE SERVICIOS Software asociado a un servicio en particular, por ejemplo: software que permite a dos BD conectarse a una red cliente/servidor (ODBC: Conectividad abierta de BD), software de objetos distribuidos, por ejemplo la tecnología CORBA permite que objetos distribuidos creados en distintos lenguajes coexistan en una misma red (intercambien mensajes), software intermedio para software de grupo, software intermedio asociado a productos de seguridad específicas (Conexiones Seguras: Sockets), etc.
  • 16. pág. 16 9. APLICACIONES Los servicios de middleware proporcionan un conjunto más funcional de la API s para permitir una aplicación a:  Localizar claramente a través de la red, proporcionando así una interacción con otro servicio o aplicación  Los datos filtrados para que sean utilizables en un ambiente público a través de anonymization process para la protección de la privacidad (por ejemplo)  Ser independiente del servicio de red  Ser fiable y siempre disponible  Añadir los atributos complementarios como semántica en comparación con el sistema operativo y servicios de red. Middleware ofrece algunas ventajas únicas tecnológicas para los negocios y la industria. Por ejemplo, los sistemas tradicionales de bases de datos suelen ser desplegados en entornos cerrados, donde los usuarios acceden al sistema sólo a través de una red restringida o intranet (por ejemplo, red interna de una empresa). Con el crecimiento de la World Wide Web, los usuarios pueden acceder a prácticamente cualquier base de datos para las que tengan derechos de acceso adecuados desde cualquier parte del mundo. Middleware aborda el problema de diferentes niveles de interoperabilidad entre las estructuras de base de datos diferente. Middleware facilita el acceso a la herencia de un sistema de gestión de bases de datos (DBMS) o aplicaciones a través de un servidor web, sin tener en cuenta las características específicas de base de datos. Las empresas frecuentemente utilizan las aplicaciones de middleware para vincular la información de bases de datos de sus departamentos, tales como nóminas, ventas y contabilidad, o bases de datos alojadas en múltiples localizaciones geográficas.5 En el mercado de la salud que es altamente competitivo, los laboratorios hacen un amplio uso de aplicaciones de middleware para minería de datos y sistema informático del laboratorio (LIS), y para combinar los sistemas de información durante fusiones de hospitales. Los Middleware ayudan a reducir la brecha entre LISs separados en una red de salud recién formado a raíz de una compra del hospital.6 Los desarrolladores de redes inalámbricas pueden utilizar middleware para afrontar los retos asociados a los de sensores inalámbricos de red (WSN), o tecnologías WSN. La implementación de una aplicación de middleware permite WSN desarrolladores. Para integrar los sistemas operativos y hardware con la amplia variedad de aplicaciones diferentes que están disponibles actualmente. Los middlewares pueden ayudar a los desarrolladores de software a no tener que escribir APIs para todos los programas de control, que actúa como una interfaz de
  • 17. pág. 17 programación independiente para sus aplicaciones. Para la Internet del Futuro, el funcionamiento de la red a través del monitoreo de tráfico en escenarios multi- dominio, utilizando herramientas de mediación (middleware) es una poderosa ayuda, ya que permiten operadores, investigadores y proveedores de servicios para supervisar Calidad de servicio y analizar los eventuales fracasos en servicio de telecomunicaciones. Por último, el comercio electrónico utiliza middleware para ayudar en el manejo de transacciones rápidas y seguras a través de muchos tipos diferentes de entornos informáticos.9 En resumen, el middleware se ha convertido en un elemento crítico en una amplia gama de industrias, gracias a su capacidad de reunir los recursos a través de diferentes redes o plataformas de computación. En 2004 los miembros de la Unión Europea de Radiodifusión (UER), han realizado un estudio de middleware con respecto a la integración de sistemas en entornos de difusión. Se trataba de sistema de expertos en ingeniería de diseño de 10 principales cadenas europeas, se trabajó durante un período de 12 meses para entender el efecto de productos, principalmente de software, basado en técnicas de producción de medios de comunicación y el diseño del sistema de radiodifusión. Los informes resultantes 3300S Tecnología 3300 y Tech fueron publicados y están disponibles gratuitamente desde el sitio web de la UER. 9.1 VENTAJAS Y CAMPOS DE APLICACION DEL MIDDLEWARE Entre las principales ventajas que se obtienen al utilizar el middleware se encuentran:  Simplifica el proceso de desarrollo de aplicaciones al independizar los entornos propietarios.  Permite la interconectividad de los diferentes Sistemas de Información de una organización.  Proporciona mayor control del negocio al poder contar con información procedente de distintas plataformas sobre el mismo soporte.  Facilita el desarrollo de sistemas complejos con diferentes tecnologías y arquitecturas. Dentro de los inconvenientes más importantes se des tacan la mayor carga de máquina necesaria para que puedan funcionar. Los sistemas middleware tienen un amplio rango de aplicaciones, de los cuales se describirán los más importantes:
  • 18. pág. 18 9.1.1 Migración de los Sistemas Host Reingeniería de Aplicaciones Toda aplicación empresarial debería diseñarse en base a módulos intermedios middleware encargados de la comunicación entre el ordenador personal y el host. Con el uso de middleware se puede desarrollar una aplicación sin tener en cuenta los futuros cambios tecnológicos que puedan sufrir los sistemas host. Si el sistema host cambia, o las aplicaciones de host se migran a plataformas de ordenadores personales, todo lo que se necesita es un nuevo módulo middleware. La interfaz de usuario, la lógica y el código interno permanecen sin cambios. Por ejemplo, si el equipo lógico del sistema host se traslada desde el mainframe a una base de datos de plataforma PC ejecutándose en un servidor de archivos, sólo hay que sustituir el módulo de middleware de forma que realice llamadas SQL. 9.1.2 Interconectividad Uno de los usos más importantes de las herramientas de middleware es la de facilitar la interconectividad de los diferentes sistemas de una organización integrando las diferentes islas de información departamentales. 9.1.3 Arquitectura orientada a objetos distribuidos El concepto de middleware permite también independizar los servicios proporcionados por diferentes objetos que se encuentran en una red proporcionando una red de objetos independientes e interconectados entre sí. 9.1.4 Arquitectura cliente/servidor La utilización de middleware permite desarrollar aplicaciones en arquitectura cliente servidor independizando los servidores y clientes, facilitando la interrelación entre ellos y evitando dependencias de tecnologías propietarias. Como se puede apreciar, la tecnología emergente middleware está constituyéndose en una plataforma fundamental para la operación de los sistemas en las organizaciones. En el capítulo uno de la tercera unidad se realizará una exposición detallada de uno de los sistemas Middleware de mayor uso actualmente, el sistema operativo distribuido CORBA.
  • 19. pág. 19 10. ¿PARA QUE USAR MIDDLEWARE? Dadas dos aplicaciones que se quieren conectar, se usa para resolver la comunicación entre los procesos, si no hay Middleware se complica el desarrollo de las aplicaciones pues se debe programar módulos de bajo nivel y esté desarrollo se repite para cada aplicación a conectar. Middleware permite realizar está conexión a través de interfaces de alto nivel por lo que permite ver un procedimiento remoto cómo si fuera local. Algunos de los ejemplos de usó pueden ser los siguientes:  Cliente/ Servidor en la misma máquina: se usa en sistemas de pc en pequeñas oficinas, en la casa, etc.  C/S a pequeña escala: aplicación clásica en una LAN con un único servidor.  C/ S a gran escala: Esquema multiservidor, que da imagen de un único sistema.  C/ S altamente distribuido: cada máquina es cliente y es servidor, así negocia con las otras máquinas mediante agentes. Voy a hablar un poco de los servicios Middleware de IBM ya que te ofrecen promover una combinación de técnicas de optimización e innovación para que pueda ejecutar TI de una forma eficiente. IBM te ofrece algunos servicios de Middleware cómo son:  Servicios de integración de SOA de IBM.  Servicios de infraestructura de aplicaciones.  Servicios On Demand.  Mejorar la calidad y aprovechar recursos. 11. MIDDLEWARES DE LAS TECNOLOGIAS INDICADAS  Oracle: es un sistema de gestión de base de datos objeto-relacional (o ORDBMS por el acrónimo en inglés de Object-Relational Data Base Management System), desarrollado por Oracle Corporation. 11.1 SOLUCIONES QUE ENTREGAN LOS MIDDLEWARES DE ORACLE  Arquitectura Orientada a Servicios y Gestión de Procesos de Negocio.  Grid de Aplicaciones para una Eficiencia Extrema.  Gestión de Identidad Centrada en las Aplicaciones.  Portales Enterprise 2.0, Gestión de Contenido y Colaboración.  Inteligencia de Negocio Generalizada y Soporte Estratégico para la Toma de Decisiones.
  • 20. pág. 20 11.2 CARACTERISTICAS DE LOS MIDDLEWARES DE ORACLE  Completo.  Integrado.  Apto para la conexión en caliente. 11.3 ¿POR QUE HOY EN DIA SON NECESARIOS LOS MIDDLEWARES DE ORACLE? Oracle Fusion Middleware 11g es la base de infraestructuras de aplicaciones de mayor aceptación hoy en día. Permite a las empresas crear y utilizar aplicaciones empresariales ágiles e inteligentes, y al mismo tiempo potenciar al máximo la eficacia informática aprovechando plenamente las arquitecturas modernas de hardware y software. 11.4 TIPOS DE MIDDLEWARE DE ORACLE  El mejor rendimiento del sector Oracle WebLogic Suite 11g.  Oracle WebCenter: La plataforma de participación de usuarios para el negocio social.  Agilidad empresarial superior Oracle SOA Suite 11g.  Oracle Identity Management 11g para los mejores productos de seguridad y cumplimiento de su categoría.  El diseño y desarrollo más unificado Oracle JDeveloper 11g.  Herramientas punteras para la creación de aplicaciones empresariales con funciones completas. 11.5 ORGANIGRAMA MIDDLEWARE DE ORACLE
  • 21. pág. 21 12. ORGANIGRAMAMIDDLEWAREAPLICADO A LOS SISTEMAS DISTRIBUIDOS 13. ALGUNOS PROYECTOS MIDDLEWARE 13.1 MIDDLEWARE PARA SISTEMAS UBICUOS BASADO EN TECNOLOGÍA DE INTERNET 2 Este proyecto tiene como misión investigar como las tecnologías de red asociadas a Internet 2 sustentan adecuadamente o no aplicaciones de cómputo ubicuo basadas en agentes autónomos para escenarios académicos o de apoyo a la academia. El cómputo ubicuo requiere de servicios de red avanzados como: un gran espacio de direcciones; sustento eficaz a la movilidad; sustento eficaz a la identificación, autentificación y confidencialidad de la información transmitida; sostén eficaz a la auto-configuración de los parámetros operativos de la red; y sustento eficaz de comunicaciones multicast y anycast.
  • 22. pág. 22 Reporte: De los seis objetivos planteados a la fecha se han concluido cuatro (4): del OB1 al OB4. Los otros dos están en un 75% de avance. Como resultado de la culminación de los primeros cuatro objetivos se han escrito tres (3) artículos de investigación, un (1) artículo de divulgación en revista electrónica internacional, y cinco (5) participaciones para Reuniones de CUDI. Asimismo, están por concluirse tres (3) tesis de licenciatura en Ciencias Computacionales, y una (1) de maestría en Ciencias Computacionales y se presentó una demostración de aplicación en la Reunión de CUDI de Primavera 2004. También, cuatro becarios de los programas del Verano de la Investigación Científica 2004 hicieron sus estancias de investigación dentro del proyecto. De los cinco artículos de investigación, uno fue presentado en el Taller de Cómputo Móvil del Encuentro Nacional de Cómputo 2003, (ENC’03) de la Sociedad Mexicana de Ciencia de la Computación; otro fue aceptado y será presentado en la versión 2004 del Taller antes mencionado; y el resto han sido sometidos en diversos congresos de especialidad, pero sin lograr ser aceptados, aunque siempre recibimos comentarios positivos (los cuales se incluyen en los anexos.). 13.2 MIDDLEWARE GRID Y PUNTO A PUNTO PARA ENTORNOS DE APRENDIZAJE COOPERATIVO Objetivos:  Entornos de Aprendizaje Cooperativo (A.C.): definir las características esenciales que ha de incorporar una aplicación informática de soporte al aprendizaje universitario para dar soporte a actividades de A.C.  Middleware: definir los componentes de una infraestructura de computación distribuida, basada en los modelos de redes grid, proporcionando servicios de acceso a los recursos, seguridad, organización y coordinación de procesos computacionales, para permitir participar a un grupo de gente en una actividad de aprendizaje cooperativo.  Planificar, optimizar y reservar recursos en un sistema distribuido con componentes autónomos y descentralizados, basados en middleware, usando algoritmos basados en sistemas económicos, redes neuronales, y sistemas neuro-difusos. Metodología:  Análisis de teorías y sistemas existentes, simulación de middleware, construcción de prototipos de entornos de A.C., y evaluación con usuarios reales.
  • 23. pág. 23 CONCLUSION En la actualidad se presentan diversas problemáticas derivadas de los paradigmas tecnológicos; por lo cual existe una inmersión de estás impactando directamente a las organizaciones empresariales y por lo tanto a la sociedad, refiriéndonos de este modo a los Middlewares, que ayudan a dar solución a problemas de conectividad entre diferentes aplicaciones, e inconvenientes de interoperabilidad, simplificando la interacción, y cumpliendo un rol estratégico en el crecimiento delas organizaciones hacia el mundo distribuido e integrado y permitiendo extenderla inversión en los sistemas propietarios y cliente/ servidor, facilitando la conexión proveyendo la misma docilidad que brindan los sistemas “Back-End” a Internet. Las aplicaciones Middlewares continuarán creciendo a medida que se implementen más tecnologías heterogéneas, por lo que se puede apreciar, las tecnologías que serán de mayor valor estratégico las encontraremos en los servidores de aplicaciones orientados a la Web, ORBs, TPMs y MOMs. Se vislumbra una nueva perspectiva para que Middleware continúe siendo la capa invisible que haga más fácil el desarrollo futuro. Aunque, la paradoja es que, mientras los Middlewares facilitan el desarrollo multiplataforma, no existe mucha facilidad para realizar la conexión entre ellos. Lo que significa que sectores o departamentos de sistemas de las organizaciones deberían tomar con seriedad las tecnologías de Middleware, además de construir una apropiada infraestructura en post de hacer frente a la dinámica y complejidad del mundo de Internet, por lo que sin la existencia de los Middlewares, cierto tipo de actividades a nivel de redes serían imposibles. En un futuro no muy lejano, habrá aplicaciones cada vez más poderosas y potentes y más Middlewares van a ser necesitados.
  • 24. pág. 24 BIBLIOGRAFIA Páginas Web:  https://es.wikipedia.org/wiki/Middleware  https://www.codejobs.biz/es/blog/2013/08/21/que-es-un-middleware  http://sistemasdistribuidosjosecastro.blogspot.pe/2016/05/v- behaviorurldefaultvmlo.html  https://es.slideshare.net/matiasyimak/middleware-15166587  http://www.monografias.com/trabajos16/sistemas-distribuidos/sistemas- distribuidos.shtml#MIDDLE  https://www.gsic.uva.es/proyectos.php?lang=es&pId_p=1  http://www.cudi.mx/proyectos/middleware-para-sistemas-ubicuos-basado-en- tecnolog%C3%ADa-de-internet-2