BLOG

Materializar la visión de las aplicaciones adaptativas en las aplicaciones tradicionales

 Miniatura
Published November 10, 2020

Hace un par de meses, introdujimos el concepto de aplicaciones adaptativas, que se comportan más como organismos vivos que como fragmentos de código rígidos. Se trata de aplicaciones que provistas con tecnologías de seguridad y entrega que protegen y defienden todos los puntos de vulnerabilidad, expanden y contraen recursos basados en las necesidades de rendimiento, detectan problemas y se reparan a sí mismas de manera proactiva.

Para materializar esta visión, hay diversas áreas fundamentales, por lo que a lo largo de las próximas semanas profundizaremos en la forma en que F5 va a abordar la visión de las aplicaciones adaptativas tanto en aplicaciones tradicionales como modernas. Definimos las «aplicaciones tradicionales» como aquellas que tienen una arquitectura monolítica, cliente-servidor o de tres niveles, en contraposición a las «aplicaciones modernas», diseñadas como servicios nativos de nube distribuida o de contenedores que interactúan a través de API.

Las aplicaciones tradicionales siguen constituyendo la arquitectura de aplicación preponderante para la mayoría de las organizaciones.

Según nuestra investigación, el 97 % de las organizaciones gestionan aplicaciones tradicionales y el 76 % de las organizaciones gestionan aplicaciones tanto tradicionales como modernas. Esto significa que las aplicaciones tradicionales no solo siguen siendo la arquitectura de aplicaciones más habitual hoy en día, sino que, además, el 21 % de las organizaciones siguen dependiendo exclusivamente de ellas.

Debido a que se desarrollaron durante las últimas décadas para abordar las necesidades empresariales de habilitación de TI más importantes, las aplicaciones tradicionales suelen posibilitar los procesos más esenciales de una organización. Pensemos, por ejemplo, en los sistemas de procesamiento de préstamos hipotecarios, los motores de procesamiento de pagos, los registros médicos electrónicos de los hospitales, las plataformas SaaS de primera generación, los sistemas de gestión de inventarios del comercio minorista y las redes móviles 3G y 4G de los proveedores de servicios. Además del papel fundamental que desempeñan y de la posible interrupción del negocio en caso de que dejen de funcionar, esas aplicaciones tradicionales también suelen resultar difíciles y costosas de cambiar o refactorizar.

La realidad es que muchos de los «front-ends» de participación de los clientes, que en la actualidad normalmente se diseñan utilizando arquitecturas modernas, todavía dependen de esas aplicaciones tradicionales en el «back-end». La mayoría de las experiencias digitales de hoy en día son una mezcla de aplicaciones antiguas, que sirven como sistemas de registro, y aplicaciones modernas, que proporcionan sistemas de participación. Esta lógica de aplicación, tradicional y moderna, está cada vez más distribuida a través del centro de datos local, la nube pública y el «edge», y todos estos elementos se unen en el dispositivo o navegador del usuario final en una única experiencia digital.

Una de las mayores oportunidades con las aplicaciones adaptativas es la actualización de las aplicaciones tradicionales y la simplificación de su seguridad y entrega para implementaciones híbridas y multinube

El desafío reside en que las aplicaciones tradicionales tienden a ser bastante frágiles.

Veámoslo de la siguiente manera: una aplicación tradicional puede haberse desarrollado usando lenguajes de programación que ya no son ampliamente conocidos, como Fortran o COBOL. Incluso si está escrita en un lenguaje de programación más contemporáneo, es probable que las personas que la escribieron o aquellas con las habilidades necesarias se hayan jubilado o no estén disponibles, lo que significa que resultará difícil encontrar expertos en el campo.

Otro factor que produce fragilidad es que los patrones de tráfico de las aplicaciones cambian con el tiempo. Las solicitudes dirigidas a la aplicación, su frecuencia, los protocolos y la naturaleza del propio paquete están cambiando. Además, existen otros factores ambientales, ya que los diversos elementos de infraestructura (por ejemplo, la conmutación y el enrutamiento de la red y la tecnología de computación o de hipervisor) que rodean a la aplicación también cambian con el tiempo.

Las vulnerabilidades y la exposición en términos de seguridad también contribuyen a dicha fragilidad. En los últimos dos años, hemos observado un aumento del 300 % en los ataques a aplicaciones, y las aplicaciones más antiguas con puntos de entrada y vulnerabilidades bien conocidos pueden representar objetivos fáciles para los sofisticados atacantes de hoy en día.

Cualquiera de esos factores podría introducir problemas que provoquen que la aplicación no funcione de forma óptima o que deje de funcionar en absoluto. Simplemente se vuelve frágil. Dado que la aplicación todavía sirve a una finalidad esencial para el negocio, no puede se puede retirar sin más y, en muchos casos, tampoco es viable «abrir» la aplicación antigua y realizar el equivalente a una operación de corazón en ella.

Para la mayoría de las organizaciones, la prioridad en torno a las aplicaciones tradicionales es maximizar la eficiencia operativa y minimizar el coste total de propiedad.

Para proteger una aplicación antigua y sacarle el máximo provecho, lo que se necesita es un «wrapping» flexible o un «scaffolding» con tecnología de seguridad y entrega para aplicaciones y que pueda resolver los problemas de la propia aplicación.

En gran parte, para eso es para lo que nuestros clientes han utilizado las iRules para BIG‑IP, para llenar los vacíos y abordar los problemas que surgen con el tiempo en las aplicaciones, como si se tratara de reformar un edificio antiguo. Al insertar tecnologías de seguridad y entrega para aplicaciones altamente programables en la trayectoria de los datos, los clientes pueden mitigar los problemas que surgen en las aplicaciones tradicionales. Actualizar las aplicaciones tradicionales puede llevar mucho tiempo y resultar costoso y arriesgado, mientras que añadir iRule es rápido, barato y no requiere de un desarrollador de aplicaciones difícil de encontrar o extremadamente demandado.

Ese «scaffolding» también debería incluir una seguridad para aplicaciones de primera categoría para permitir políticas y servicios estables en todos los entornos, especialmente a medida que las empresas trasladan esas aplicaciones tradicionales a una nube pública o, incluso, a una implementación multinube.

El «wrapping» en la seguridad para aplicaciones y la tecnología de entrega en las aplicaciones tradicionales proporciona una capa de protección que resulta más valiosa cuando es altamente flexible. Esa flexibilidad adopta la forma de programabilidad y configurabilidad, y es lo que permite que el direccionamiento del tráfico y las políticas eviten que ciertos flujos de tráfico perjudiquen a la propia aplicación. Ese «wrapping» también puede asumir una serie de funciones adicionales, desde el equilibrio de la carga y la traducción de protocolos (por ejemplo, HTTP/2 a HTTP/1.1) hasta las capacidades de seguridad, como la de cortafuegos para las aplicaciones, la protección contra la denegación de servicio distribuido y la mitigación de bots.

Para una máxima eficiencia operativa, las organizaciones deberían evaluar la seguridad de las aplicaciones y las tecnologías de entrega como un conjunto que pueda favorecer la estabilidad en las instalaciones y en la nube pública. Un enfoque «best‑of‑suite» se vuelve aún más importante para el rendimiento a medida que el cifrado del tráfico aumenta. Si se separan esas funciones en una serie de aparatos virtuales o físicos a lo largo de la trayectoria de datos de las aplicaciones, cada dispositivo de esa ruta de las aplicaciones desencripta el tráfico, le aplica alguna función y vuelve a encriptarlo, lo que resulta superineficiente. Estandarizar y consolidar las funciones de seguridad y entrega de las aplicaciones en una sola solución no solo es bueno para el bolsillo, sino también para el rendimiento de las aplicaciones.

Cuando se trata de ejecutar las aplicaciones tradicionales de la manera más efectiva y eficiente posible, la automatización adquiere cada vez más importancia. La automatización de las funciones de seguridad y entrega de las aplicaciones en las aplicaciones tradicionales ofrece una forma magnífica de reducir el coste operativo. Esto se hace a través de un conjunto robusto de API declarativas con control de versiones, de modo que el entorno de la infraestructura pueda seguir evolucionando y se puedan automatizar cada vez más tareas manuales. Las ventajas de la automatización pueden incrementarse mediante la implementación de soluciones de gestión centralizada como BIG-IQ. La automatización y la manejabilidad han sido y seguirán siendo el eje central de BIG-IP, así como aspectos que permitirán a sus equipos dedicar el tiempo a esfuerzos más estratégicos.

Por último, para sacar el máximo partido a todo esto, es importante invertir el tiempo y los recursos necesarios para garantizar que se ejecuten las últimas versiones y se obtengan las capacidades más actuales. Hay que asegurarse de tener la más alta calidad, el código más seguro, y a muchas de las propuestas de valor más avanzadas solo es posible acceder mediante las versiones más recientes de BIG-IP. Para beneficiarse de un blindaje entorno a las frágiles aplicaciones tradicionales, es crucial no dejar que las tecnologías de seguridad y entrega para aplicaciones se vuelvan tan frágiles como la propia aplicación tradicional.

* * *

En resumen, las aplicaciones tradicionales seguirán desempeñando un papel fundamental en la cartera de aplicaciones de la mayoría de las organizaciones durante muchos años. Las tecnologías adecuadas de seguridad y entrega para aplicaciones pueden garantizar que las aplicaciones tradicionales sigan funcionando y, al mismo tiempo, mejorar la eficiencia operativa. Esas tecnologías de seguridad y entrega para las aplicaciones deberían funcionar uniformemente en los entornos de las instalaciones y de la nube pública y ser altamente programables y configurables para proporcionar la mayor flexibilidad posible. También deberían incluir capacidades de seguridad avanzadas para proteger las aplicaciones esenciales incluso contra los ataques más sofisticados. BIG-IP sigue siendo la tecnología de seguridad y entrega para aplicaciones preferida para las aplicaciones tradicionales, ya que cumple con todos esos requisitos.

Simplificar la entrega de aplicaciones tradicionales para entornos multinube es una de las formas en que estamos materializando la visión de las aplicaciones adaptativas. La visión completa requiere la visibilidad y el análisis de soluciones como Beacon, BIG-IQ y NGINX Controller, junto con la capacidad de orquestar acciones a través de BIG-IP y NGINX, y todo ello mientras se garantiza la protección tanto de las aplicaciones tradicionales esenciales como de las aplicaciones modernas nativas de la nube. En última instancia, esto hará que toda su cartera de aplicaciones sea más adaptable y le permitirá fortalecer y ofrecer las experiencias digitales más extraordinarias a sus usuarios finales.