Jump to section

¿Qué es el middleware?

Copiar URL

El middleware es el software que brinda servicios y funciones comunes a las aplicaciones, además de lo que ofrece el sistema operativo. Generalmente, se encarga de la gestión de los datos, los servicios de aplicaciones, la mensajería, la autenticación y la gestión de las API.

Ayuda a los desarrolladores a diseñar aplicaciones con mayor eficiencia. Además, actúa como hilo conductor entre las aplicaciones, los datos y los usuarios.

En el caso de las empresas con entornos de contenedores y multicloud, el middleware puede rentabilizar el desarrollo y la ejecución de las aplicaciones según sea necesario.

El origen del middleware

El término middleware apareció por primera vez en un informe sobre la conferencia de Ingeniería de software de la OTAN de 1968, en Garmisch-Partenkirchen, Alemania. La conferencia tenía como objetivo definir el campo de la ingeniería de software e incluía el diseño, la producción y la distribución de los sistemas de software.

Como categoría amplia, el middleware abarca desde servidores web hasta sistemas de autenticación y herramientas de mensajería. Estos son algunos casos prácticos comunes para el middleware en el desarrollo moderno.

Middleware New Application Development diagram

Desarrollo de aplicaciones nuevas

El middleware admite tiempos de ejecución conocidos y modernos para varios casos prácticos. Los desarrolladores y los arquitectos pueden trabajar con agilidad en diferentes plataformas, teniendo como referencia conjuntos de lenguajes de programación, marcos y tiempos de ejecución básicos. El middleware también ofrece las funciones que se utilizan con más frecuencia, como los servidores web, el inicio de sesión único (SSO), el servicio de mensajería y el almacenamiento en caché en memoria.

Middleware optimization of existing applications diagram

Optimización de las aplicaciones actuales

El middleware permite que los desarrolladores conviertan las aplicaciones monolíticas heredadas en aplicaciones nativas de la nube, lo cual mantiene activas las herramientas importantes con un rendimiento mejorado y una mayor portabilidad.

Middleware comprehensive integration diagram

Integración completa

Las herramientas de integración de middleware conectan sistemas internos y externos fundamentales. Las funciones de integración, como la transformación, la conectividad, la capacidad de composición y la mensajería empresarial, en combinación con la autenticación de SSO, permiten que los desarrolladores extiendan las funciones a otras aplicaciones con facilidad.

Middleware app programming interfaces diagram

Interfaces de programación de aplicaciones (API)

A muchos de los servicios de middleware se accede a través de las API, que son conjuntos de herramientas, definiciones y protocolos que permiten que las aplicaciones se comuniquen entre sí. Gracias a las API, es posible conectar productos y servicios completamente distintos con una capa común.

Middleware data streaming diagram

Transmisión de datos

Si bien las API permiten compartir los datos entre las aplicaciones, también se utiliza la transmisión de datos asincrónica para tal fin. Lo que hace este enfoque es replicar un conjunto de datos en un almacén intermedio, al que pueden acceder diversas aplicaciones. Una herramienta de middleware open source conocida para la transmisión de datos en tiempo real es Apache Kafka.

Middleware intelligent business automation diagram

Automatización empresarial inteligente

El middleware ayuda a los desarrolladores, los arquitectos y los líderes empresariales y de TI a automatizar las decisiones manuales, lo cual mejora la gestión de los recursos y el nivel de eficiencia general.

Si bien el desarrollo de aplicaciones en la nube ofrece muchos beneficios, también implica una complejidad adicional. Las aplicaciones se pueden implementar en múltiples infraestructuras, desde sistemas locales hasta nubes públicas. Las arquitecturas pueden variar considerablemente. Los desarrolladores deben coordinar varias herramientas, lenguajes y marcos. Además, hay una presión extra por lograr más objetivos en menos tiempo y a un menor costo.

Las empresas recurren al middleware como una forma de abordar esta complejidad y de agilizar y rentabilizar el desarrollo de aplicaciones. El middleware puede admitir entornos de aplicaciones que trabajan de manera uniforme y no presentan problemas en una plataforma altamente distribuida.

Diseñe las aplicaciones en la nube e impleméntelas donde quiera. Quédese con la tranquilidad de que el funcionamiento será el mismo, gracias al middleware que las respalda.

Las aplicaciones empresariales modernas están diseñadas para ejecutarse según sea necesario, en las instalaciones y en todas las nubes. Para crearlas, los desarrolladores necesitan entornos de aplicación con funciones básicas unificadas. El middleware es la clave para conseguir este tipo de entorno.

Podemos pensar en estas funciones en términos de cuatro capas, además de algunas herramientas:

La capa de los contenedores

Esta capa de middleware gestiona todo lo relacionado con la distribución de los ciclos de vida de las aplicaciones de manera uniforme. Ofrece la función de DevOps junto con las de integración y distribución continuas (CI/CD), gestión de contenedores y malla de servicios.

La capa de los tiempos de ejecución

Esta capa contiene los entornos de ejecución para el código personalizado. El middleware ofrece tiempos de ejecución y marcos ligeros para los entornos de nube altamente distribuidos, como los microservicios, el almacenamiento en caché en memoria para un acceso rápido a los datos y los servicios de mensajería para acelerar la trasferencia de dichos datos.

La capa de integración

El middleware de integración ofrece servicios que se utilizan para conectar las aplicaciones compradas y personalizadas, así como los recursos de software como servicio (SaaS) a través de la mensajería, la integración y las API, para formar sistemas funcionales. También puede ofrecer servicios de caché y bases de datos en memoria, transmisión de eventos o datos y gestión de las API.

La capa de la gestión de decisiones y la automatización de procesos

Esta última capa correspondiente al middleware de desarrollo incorpora la gestión de decisiones, la optimización y la automatización, y la inteligencia fundamentales.

Herramientas

Además de estas cuatro capas de middleware, hay herramientas que los desarrolladores de aplicaciones utilizan para sus diseños (como plantillas y contenedores configurados previamente), las cuales también facilitan el desarrollo conjunto y el intercambio de código eficientes. Las herramientas respaldan una experiencia uniforme y coherente de desarrollo y distribución de las aplicaciones en las instalaciones y en la nube.

Keep reading

Artículo

¿Qué es la integración?

¿Desea saber qué es la integración? Obtenga información acerca de qué es, cómo incorporarla y por qué es mucho mejor con un enfoque open source.

Artículo

¿Qué es Apache Kafka?

Apache Kafka es una plataforma distribuida de transmisión de datos que permite publicar, almacenar y procesar flujos de registros, así como suscribirse a ellos, de forma inmediata.

Artículo

¿Qué es una API?

Una API o interfaz de programación de aplicaciones es un conjunto de definiciones y protocolos que se usa para diseñar e integrar el software de las aplicaciones.

Más información sobre la integración

Productos

Red Hat Integration

Conjunto completo de tecnologías de integración y mensajería.

Red Hat Runtimes

Conjunto de productos y herramientas para desarrollar y mantener aplicaciones creadas en la nube.

Red Hat Process Automation

Conjunto de productos para automatizar los procesos y decisiones de la empresa de manera inteligente.

Red Hat Cloud Services

Los servicios de nube de Red Hat® incluyen aplicaciones, plataformas y servicios de datos alojados y gestionados que optimizan la experiencia en la nube híbrida.

Contenido adicional

Ebook

Integración ágil: el plano técnico de la arquitectura empresarial

VISION GENERAL

Red Hat Cloud Services

Servicios gestionados para el desarrollo en la nube

Capacitación

Curso de capacitación gratuito

Red Hat Agile Integration Technical Overview

Illustration - mail

Obtenga más contenido como este

Suscríbase a nuestro boletín informativo: Red Hat Shares.