DESARROLLADOR

La migración de aplicaciones heredadas a una plataforma sin servidor no tiene por qué ser dolorosa

Es más fácil modernizar sus aplicaciones existentes paso a paso para trabajar con marcos sin servidor como AWS Lambda.

La computación en la nube se concibió originalmente como capaz de escalar el poder de cómputo para satisfacer las necesidades de una organización. Mediante el uso de máquinas virtuales impulsadas por la nube, se pueden evitar los procesos de gastos de capital costosos y lentos, y los nuevos sistemas se pueden poner en línea en segundos. Los marcos de computación sin servidor, como AWS Lambda, llevan esta abstracción a un nivel superior: los servidores son efímeros y una instancia dura solo lo que se necesita para realizar una tarea determinada.

Mirar: Informe especial: Preparación para la informática sin servidor (PDF gratuito) (República tecnológica)

Esto puede ahorrarle mucho dinero a una organización: puede ser un desperdicio ejecutar una máquina virtual para un proceso que está inactivo la mayor parte del día. A pesar de los beneficios potenciales, los desarrolladores de software a menudo se estremecen ante la perspectiva de integrar funciones sin servidor en aplicaciones heredadas. Brett Berliner, ingeniero de software principal de Insight, habló en Code PaLOUsa en Louisville, Kentucky en agosto sobre cómo es posible esta integración.

Sepa qué código heredado tiene

Aunque las dos disciplinas son muy diferentes, un concepto en desarrollo urbano se puede aplicar fácilmente al desarrollo de software: la diferencia entre proyectos greenfield y brownfield. Para los desarrolladores, crear una nueva aplicación suele ser muy emocionante porque ofrece la oportunidad de crear algo desde cero. Por el contrario, ya existen proyectos brownfield. «Tiene una connotación negativa», dijo Berlin. «Son solo aplicaciones existentes, y eso no significa que sean malas o que estén mal diseñadas».

LEER  Cómo y por qué ejecutar chkdsk para escanear y reparar discos duros de Windows 11

«Las opiniones y el enfoque siempre están cambiando», dijo Berlin. «A medida que la empresa madura, el rendimiento y la confiabilidad comienzan a triunfar sobre la innovación y la creatividad».

Las aplicaciones que son demasiado grandes (demasiado distribuidas o demasiado centralizadas) «automáticamente son buenas candidatas para serverless», según Berliner, y agrega que «si su servidor está desactualizado o tiene poca potencia… realmente dificulta el crecimiento y la expansión de su sitio, si tiene servidores locales antiguos. Si trasladamos esos servidores a la nube o a algo más potente, tendremos que volver a probar todos los puntos de integración de todos modos, entonces, ¿por qué no traer nueva tecnología?

Del mismo modo, las aplicaciones desarrolladas originalmente fuera de los flujos de trabajo de DevOps, las aplicaciones con altas tasas de excepción «pueden explotar toda la aplicación» y las aplicaciones con un conocimiento comercial limitado, con un gran desarrollo hace décadas. En el caso de los programadores originales que están jubilados según los berlineses, todos son buenos candidatos.

¿Cuándo no es serverless la respuesta?

Algunas aplicaciones no son adecuadas para aplicaciones sin servidor. Compartir información entre funciones requiere soluciones como Redis o Memcached, ya que no hay caché compartida en Lambda. Asimismo, cargar información de bases de datos, ejecutar autenticación, etc., puede crear programas para migraciones sin servidor.

Un gran número de ejecuciones simultáneas también es difícil, ya que Lambda limita a los usuarios a 1000 ejecuciones simultáneas de forma predeterminada, según Berliner.

Reemplazar componentes individualmente es la ruta de migración más fácil

Reemplazar componentes individualmente es la opción más segura para convertir aplicaciones heredadas a sin servidor. «Los clientes no pueden esperar a que se complete todo el ecosistema, y ​​el lanzamiento de un sitio tan grande puede ser realmente arriesgado de todos modos», dijo Berliner, y agregó que el proceso también permite la introducción de prácticas de desarrollo como DevOps, mientras que el triunfo de pequeñas migraciones de componentes individuales proporciona una rápida retroalimentación y limita la interrupción de los procesos comerciales.

La integración sin servidor en una aplicación es un paso útil hacia la modernización. «Realmente creo que al integrarse sin servidor, todas las aplicaciones web modernas mejoran, incluso si no se usan exclusivamente», dijo Berliner. «Incluso si solo está pensando en cómo mover las cosas a la tecnología sin servidor, obtendrá beneficios inmediatos».

Para obtener más información sobre la informática sin servidor, consulte «Por qué la tecnología sin servidor se está convirtiendo tan rápidamente en una misión crítica para las empresas principales», «Cómo Puresec protege las aplicaciones sin servidor de los ataques cibernéticos» y «AWS frente a Microsoft Azure: aprenda sobre la informática sin servidor» en Tecnopedia Aplicación sin servidor Tendencias».

virtualizationistock 894624056natalyayudina
Getty Images/iStockphoto

LEER  Snapchat abre 4 API a los desarrolladores, así es como puedes usarlas en tu negocio

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba