Serverless
Observabilidade
Custos em Nuvem
Operação
Monitoramento

Serverless para aplicaciones: arquitectura en la vida cotidiana

Serverless es fácil de lanzar y peligroso de operar; aquellos que no dominan la observabilidad y los costos lo descubren a fin de mes.

La historia de amor con serverless suele terminar con el primer informe de costes inesperado o el primer incidente que nadie puede diagnosticar. Es en el día a día, con el sistema funcionando en producción y personas reales dependiendo de él, que el enfoque revela su verdadero carácter.

Iniciar sin servidor es fácil. Operar sin servidor es donde radica la dificultad que nadie menciona en los tutoriales. Los mismos atributos que hacen atractiva la tecnología, ejecución efímera, escalabilidad automática, cobro por uso, se convierten en desafíos concretos cuando se necesita entender, monitorear y pagar por lo que se está ejecutando.

Este texto trata sobre esa fase. No se trata de concepto o implementación, sino de lo que sucede después de que todo está en el aire y la responsabilidad de mantener el barco a flote es suya. Observabilidad, costos y operación: los temas que separan a quienes juegan sin servidor de quienes realmente operan sin servidor.

El shock de la producción

En desarrollo, todo parece bajo control. Pruebas una función, responde, la sigues. En producción, con tráfico real, empiezan a aparecer comportamientos que nunca antes habías visto.

Las funciones tardan más de lo esperado en determinados momentos. Los errores surgen en puntos imprevistos. El costo mensual es diferente al estimado. Y cuando intentas entender por qué, descubres que no tienes suficiente visibilidad para responder.

Este es el shock de la producción sin servidor. Un sistema distribuido en decenas de ejecuciones efímeras es, por naturaleza, difícil de ver. Y lo que no ves, no lo controlas.

La tesis: serverless traslada el trabajo a la operación

Mi posición es que serverless no elimina el esfuerzo operativo, lo transforma y, de alguna manera, lo intensifica.

Dejaste de cuidar los servidores, es verdad. Pero adquirió la responsabilidad de operar un sistema más extendido, más dinámico y más difícil de observar. La obra no desapareció. Cambió su naturaleza.

Cualquiera que adopte la tecnología sin servidor pensando que la operación será trivial se está preparando para una decepción. La operación es diferente, y dominarla requiere invertir en tres frentes que muchas veces se descuidan: observabilidad, control de costos y disciplina de seguimiento continuo.

Observabilidad: ver lo invisible

En una aplicación tradicional, puedes iniciar sesión en el servidor e investigar. En sin servidor, no hay ningún servidor al que unirse. Las funciones nacen y mueren. Cuando algo sale mal, el entorno de fracaso ya no existe.

Por lo tanto, la observabilidad no es un lujo en serverless, es la única forma de entender el sistema. Esto significa que es necesario que existan tres cosas desde el principio.

Registros estructurados, que registran lo que hizo cada función de forma que se pueda buscar. Métricas, que muestran patrones de ejecución, duración, errores y uso a lo largo del tiempo. Y el seguimiento distribuido, que le permite seguir una solicitud mientras atraviesa múltiples funciones y servicios.

Sin estas tres capas, depurar un problema en producción se convierte en conjeturas. Con ellos podrás responder a la pregunta más importante de la operación: ¿qué está pasando ahora mismo dentro de mi sistema?

Costos: el villano silencioso

El modelo de pago por uso se vende como una ventaja, y a menudo lo es. Pero en la vida cotidiana esconde una trampa. Cuando el costo es proporcional al uso, un error puede costar dinero real, en tiempo real.

Una función en un bucle inadecuado, un evento que desencadena una cascada, un pico de tráfico malicioso, todo esto se convierte en una factura. Y debido a que sin servidor escala automáticamente, escala el problema tan eficientemente como lo haría con el éxito.

Operar sin servidor de manera responsable requiere monitorear de cerca los costos. Establece alertas de gastos anómalos. Comprenda qué funciones consumen más. Establece límites donde tenga sentido. El final de mes no puede ser el momento en el que descubres que algo se ha salido de control.

Para una organización pública, esto es aún más delicado: un presupuesto predecible es importante, y una factura de la nube que sube sin previo aviso es un problema de gestión, no sólo técnico. El costo debe monitorearse como cualquier otra métrica de salud del sistema.

Operaciones diarias: qué cambios en la rutina

Actualizaciones y versiones

La actualización de docenas de funciones independientes requiere un proceso. Sin automatización y control de versiones, se pierde el control de qué se ejecuta y dónde. Una rutina operativa saludable trata cada cambio como algo rastreable y reversible.

Manejar fallas parciales

En un sistema generalizado, las fallas rara vez arruinan todo. En cambio, algunas partes fallan mientras otras les siguen. Operar bien significa diseñar para fallas parciales: reintentos automáticos, colas que contienen lo que no se pudo procesar y claridad sobre qué hacer cuando una pieza falla.

Límites del proveedor

Cada plataforma sin servidor] tiene límites de ejecución simultánea, duración y tamaño. En la vida cotidiana, estos límites pueden sorprenderte en su punto máximo. Conocerlos y monitorear qué tan cerca estás de ellos es parte de operar con madurez.

Un ejemplo de vida operativa diaria

Piense en un sistema sin servidor que procesa las solicitudes de los ciudadanos para un servicio municipal. Todo funciona bien hasta que, en un día límite, el volumen se dispara.

Sin observabilidad, el equipo solo vería quejas de lentitud sin conocer la causa. Con observabilidad, se vería que una función específica se topa con un límite competitivo y que los costos han aumentado junto con el tráfico.

Una operación madura actuaría con información: ajustar límites, identificar cuellos de botella y al día siguiente revisar los costos máximos para entender si valió la pena. Sin esta visibilidad, sería difícil apagar incendios en la oscuridad. Es esta diferencia la que define la madurez operativa.

El comercio es donde la verdad sale a la luz

Serverless recompensa a quienes lo operan con seriedad y castiga a quienes lo ignoran después del lanzamiento. La tecnología ofrece flexibilidad y ahorro, pero requiere atención continua a la observabilidad y los costos.

La lección que llevo es simple. El lanzamiento es el comienzo, no el final. Los sistemas viven en la vida cotidiana, y es ahí donde descubrimos si la arquitectura fue una buena decisión o una promesa incumplida.

Serverless brilla para aquellos que entienden que la factura, técnica y financiera, llega todos los días, no sólo en el lanzamiento.

Si opera sin servidor en producción y siente que le falta visibilidad o control de costos, vale la pena hablar con él. Tengo otros artículos en el blog sobre el concepto serverless, casos de uso e implementación que completan este viaje desde el principio hasta el día a día.

Lea también