Middleware
Enviado por Dayany • 30 de Abril de 2012 • 1.660 Palabras (7 Páginas) • 713 Visitas
1. QUE SON LOS MIDDLEWARE
Según el libro Distributed Systems concepts and design de George Coulouris “los middleware son una capa de software que provee una abstracción de programación así como enmascarar la heterogeneidad de las redes, hardware, sistemas operativos y lenguajes de programación”1.
Este software se encuentra sobre el sistema operativo y debajo de la aplicación como se observa en la Figura 1 donde se ve que administra la comunicación por medio de API entre ela aplicación distribuida y los diferentes aspectos de los sistemas operativos.
Figura1. BAKKEN DAVID E. Middleware. Washington State University
En su libro George Coulouris agrega que “para resolver problemas de heterogeneidad los middleware ofrecen un modelo computacional uniforme para ser usado por los programadores. Entre los posibles modelos incluidos se encuentran invocación remota de objetos, notificación remota de eventos, acceso remoto a bases de datos y la transacción distribuida de procesos”2
2.
3. CLASIFICACIÓN DE LOS MIDDLEWARE
Middleware Transaccional (TM)
Conocido también como transacción de procesos, fueron diseñados para ayudar sistemas de transacciones síncronas. La principal función es la coordinar las solicitudes de los clientes y servidores.
Productos:
• IBM CICS
• BEA Tuxedo
Ventajas:
• Componentes se mantienen es estados consistentes
• Muy confiable
• Este middleware tiene mejor funcionamiento que el orientado a mensajes y el middleware orientado a procesos
• Puede enviar, programar y priorizar las solicitudes de varias aplicaciones generando ahorro en tiempos de respuesta y costo de computadores
Desventajas:
• Generalmente la clasificación y desclasificación tiene que hacerse de manera manual
• La falta de estándares comunes reduce la portabilidad de los sistemas distribuidos
• Solo se puede usar en plataformas UNIX y server NT
Mejor escenario de uso:
• Es conveniente usarlo cuando se tiene que coordinar y sincronizar múltiples bases de datos
Middleware orientado a mensajes (MOM)
Middleware que habilita la comunicación a través de mensajes, de este tipo existen dos tipos, los mensajes en fila y los mensajes de paso. En el primero de estos el mensaje es enviado y entra en una cola donde espera a ser enviado a su receptor, en los mensajes de paso la comunicación se hace de manera directa entre los dos interesados, en este tipo de middleware el usuario se subscribe al receptor generando este una lista de confianza
Productos:
• IBM MQSeries
• Java Message Queue
Ventajas:
• Este middleware no se preocupa por que no se entregue un mensaje, ya que se entrega a todos los computadores o no se entrega a ninguno
• Al usar el tipo de mensajes en fila se aumenta la confiabilidad y seguridad
• Acepta más protocolos de red que el middleware orientado a procesos
• Este envía una sola vez el mensaje debido a su calidad aumentando la fiabilidad
Desventajas:
• Limitada escalabilidad y soporte de heterogeneidad
• Muy mala portabilidad debido a que no es compatible con ningún estándar, es decir que una aplicación que sea desarrollada para un middleware orientado a mensaje no será compatible con otra aplicación similar
Mejor escenario de uso:
• Es bueno implementarlo donde no se encuentre disponibilidad garantizada de los componentes o la red
Middleware orientado a procesos (RPC)
También conocido como Remote procedure calls (RPC) ofrece a los programadores la posibilidad de invocar un proceso que se esté ejecutando en otra parte de la red.
Productos:
• Open Software Foundation's Distributed Computing Environment DCE
• Microsoft RPC Facility
Ventajas:
• Excelente soporte de heterogeneidad debido a que este fue construido para su uso en múltiples sistemas operativos y múltiples lenguajes de programación
• La clasificación y desclasificación se genera automáticamente, facilitando el desarrollo del sistema distribuido.
Desventajas:
• No soporta grupos de comunicación
• No soporta comunicaciones asíncronas, replicaciones y balanceos de cargas, generando baja escalabilidad
• El soporte a fallos es malo haciendo que los programadores deban capturan la excepciones y tratarlas
Mejor escenario de uso:
• Lo mejor es utilizarlos en pequeños sistemas con comunicaciones punto a punto
Middleware Orientado a objetos
Este tipo de middleware es una evolución del middleware RPC, se le añadieron conceptos de orientación a objetos tales como herencia, referencia a objetos y excepciones, permite llamar objetos remotos con sus respectivas operaciones
Productos:
• OMG's CORBA
• Microsoft COM
• Java RMI
Ventajas:
• La clasificación y desclasificación se genera automáticamente tanto en el cliente como en el servidor
• Soporta comunicaciones síncronas y asíncronas
Desventajas:
• Falta de escalabilidad
Mejor escenario de uso:
• Su uso se recomienda para aplicaciones que su escalabilidad se limitada o no la necesiten
4. Middleware existentes
4.1. IBM CICS
• Desarrollada en julio 8 de 1969 en estados unidos por IBM
• Middleware transaccional
• CICS puede garantizar que las transacciones están acabadas, de lo contrario deshacer la transacción para asegurar la integridad de los datos
• Capaz de comunicar un programa con un usuario en línea y permitir escribir o leer información así como registro de transacciones para posteriormente almacenarlo en bases de datos
• Ofrece compatibilidad con transacciones realizadas con:
o COBOL
o PL/I
o C
o C++
o IBM Basic assembly language
o REXX
o Java.
4.2. BEA TUXEDO
• Compatible con las siguientes plataformas
o Compaq Tru64 UNIX 5.1
o Hewlett Packard HP-UX 11.0 (32-bit)
o Microsoft Windows 2000 and 98 (Windows 98
...