Guía para principiantes para dominar el modelo de aplicaciones serverless de AWS

Guía para principiantes para dominar el modelo de aplicaciones serverless de AWS

  • ITOps y DevOps
  • Nube
6 min de lectura Actualizado Mar 17, 2025

Puntos clave: El Modelo de Aplicación Serverless de AWS (AWS SAM) simplifica la creación, despliegue y gestión de aplicaciones serverless, permitiendo a los desarrolladores centrarse en la programación sin preocupaciones relacionadas con el servidor. Esta guía cubre características esenciales, beneficios y recursos de AWS SAM, incluyendo su integración con AWS Lambda y Amazon API Gateway.

  • Agiliza el desarrollo de aplicaciones serverless.
  • Ofrece un modelo de pago por uso eficiente y de bajo coste.

Las aplicaciones serverless son cambiando la forma en que las empresas hacen negocios al permitirles desplegarse mucho más rápido y con más frecuencia, una ventaja competitiva.

El Modelo de Aplicación Serverless de AWS (AWS SAM) DE Amazon ha supuesto un cambio radical en este ámbito, facilitando a los desarrolladores la Crea, el acceso y el despliegue de aplicaciones, gracias a plantillas y ejemplos de código simplificados.

¿Qué te conoce en esta guía

Esta guía están una introducción para desarrolladores que son interesados en aprender a programar en AWS SAM. Hablaremos de los siguientes temas y características clave de AWS SAM:

Terminología clave

Aquí son tres términos clave te necesitas entender para Comienza programación en AWS SAM:

  • Función como Servicio (FaaS). Piensa en el FaaS como un marco listo para implementar que puede adaptarse fácilmente a las necesidades de una empresa empresarial. El FaaS permite a los clientes desarrollar y ejecutar código sin necesidad de provisiona y gestiona infraestructura.
  • Servicio de cómputo. Un FaaS bajo demanda especializado en computación serverless.
  • Aplicación sin servidor. Una aplicación, programada en la nube, que no requiere mantenimiento de servidores.

(Conoce más sobre arquitectura serverless.)

¿Quién usa AWS SAM?

AWS SAM es un recurso importante para cualquier desarrollador que:

  • Está listo para utilizar computación serverless
  • Quiere conoce más sobre arquitectura serverless

Los recursos disponibles en AWS SAM Haz fácil para cualquier programador Obtén sus pies con servicios de computación sin servidor eficientes y de bajo coste que ofrece Amazon.

¿Qué es AWS SAM (Modelo de Aplicación Serverless)?

El Modelo de Aplicaciones Serverless (SAM) de AWS está diseñado para Haz la creación, despliegue y ejecución de aplicaciones serverless lo más sencillas posible. Esto se puede hacer usando plantillas de AWS SAM con solo unos pocos fragmentos de código seleccionados; de este modo, prácticamente cualquiera puede Crea una aplicación serverless.

¿Qué recursos de AWS son utilizados para AWS SAM?

Veamos los recursos que son utilizados en el Modelo de Aplicaciones Serverless de AWS.

AWS SAM CLI, YAML & CloudFormation

Las aplicaciones SAM de AWS pueden crearse usando la herramienta de línea de comandos de la CLI de AWS SAM. La CLI SAM te permite construir, probar y desplegar aplicaciones usando cualquiera de:

  • Plantillas CLI SAM
  • El Kit de Desarrollo en la Nube de AWS (CDK)

SAM CLI también puede usarse para el despliegue de aplicaciones.

te pueden Define y modelar plantillas de aplicaciones SAM usando YAML.

Las plantillas de SAM de AWS son una extensión de las plantillas de AWS CloudFormation. En el despliegue, SAM transforma la sintaxis SAM en sintaxis CloudFormation. CloudFormation configura y configura la infraestructura de servidores bajo la que funcionarán tus aplicaciones serverless, permitiendo te se concentre en tu aplicación en lugar de en tu infraestructura.

AWS Lambda

La plataforma AWS Lambda FaaS existe para que los desarrolladores puedan ejecutar código sin tener que administrar servidores. Usando el servicio de cómputo Lambda, los desarrolladores pueden subir código desplegable. Luego, Amazon se encarga de la administración, cobrando solo por el tiempo de ejecución acumulado utilizado.

La consola Lambda facilita Crea aplicaciones con solo unos clics. Lambda soporta muchos lenguajes a través de entornos de ejecución Lambda, incluyendo C#, Go, Java, .Net, Node.js y Python.

Los desarrolladores pueden Crea funciones Lambda simples, simples y escalables que pueden invocarse de varias maneras, incluyendo:

  • Invocación automática usando triggers en Lambda u otro servicio de AWS. Usando triggers, las funciones Lambda pueden invocarse en respuesta a eventos del ciclo de vida, eventos externos o desde un calendario.
  • Mapeo de fuentes de eventos desde otro recurso de AWS. Mapeos de fuentes de eventos leen elementos de un flujo de Amazon Kinesis o Amazon DynamoDB; una cola de Amazon SQS; o otro recurso de AWS y envían esos elementos a una función Lambda.
  • Otros servicios de AWS que pueden invocar directamente funciones Lambda.

Cabe destacar que las funciones creadas en la arquitectura de Lambda son escalables para un rendimiento óptimo.

(Compárese AWS Lambda con AWS ECS.)

Pasarela API de Amazon

Utilizando el servicio Amazon API Gateway, los desarrolladores pueden Crea, desplegar, asegurar y supervisar el frontend de su aplicación serverless. Las extensiones de API Gateway pueden utilizarse en tus plantillas de AWS SAM.

Al igual que AWS Lambda, que está diseñado para Crea el backend de una aplicación, Amazon API Gateway elimina la complejidad de escribir y desplegar código que ejecuta el punto de entrada principal de tu aplicación, incluyendo la autorización. Las APIs de Gateway funcionan con backends AWS Lambda, así como con Amazon EC2 y otros servicios de aplicaciones web.

Amazon mantiene su servicio API Gateway bajo y asequible para los desarrolladores cobrando únicamente por:

  • Llamadas realizadas a APIs
  • Transferencias de datos desde ellos

Repositorio de Aplicaciones Serverless de AWS

El AWS Serverless Application Repository están un ecosistema buscable que permite a los desarrolladores encontrar aplicaciones serverless y sus componentes para su despliegue. Ayuda a simplificar el desarrollo de aplicaciones serverless al ofrecer aplicaciones listas para usar.

Ventajas de la programación en AWS SAM

AWS SAM para aplicaciones serverless

Ejemplos de modelos de aplicación serverless

Pasos básicos del repositorio de aplicaciones sin servidor de AWS

Aquí son los pasos básicos:

  1. Buscar y descubrir. Un desarrollador puede buscar en el repositorio fragmentos de código, funciones, aplicaciones serverless y sus componentes.
  2. Integra con la consola AWS Lambda. Los componentes del repositorio ya son disponibles para los desarrolladores.
  3. Configurar. Antes de desplegar, los desarrolladores pueden establecer variables de entorno, valores de parámetros y más. Por ejemplo, te puede optar por la vía plug-and-play añadiendo componentes de repositorio a un framework de aplicación más amplio, o te puede deconstruir y modificar el código para una mayor personalización. Si es necesario, también se pueden enviar pull requests a los autores del repositorio.
  4. Desplegar. Las aplicaciones desplegadas pueden gestionarse desde la Consola de Gestión de AWS. Un desarrollador puede seguir indicaciones para nombrar, describir y subir sus aplicaciones y componentes serverless al ecosistema, donde pueden compartirse internamente y con otros desarrolladores de todo el ecosistema. Esta característica convierte a AWS SAM en un entorno verdaderamente de código abierto.

te pueden crear aplicaciones serverless para casi cualquier tipo de servicio backend sin preocuparse por la escalabilidad ni la gestión de servidores. Aquí son algunos de los muchos beneficios que ofrece construir aplicaciones serverless en AWS SAM.

Bajo coste y eficiencia

AWS SAM están económico y eficiente para los desarrolladores debido a su estructura de pago por uso. La plataforma solo cobra a los desarrolladores por su uso, lo que significa que nunca te pagar por un servicio mayor que te uso.

Procesos simplificados

El objetivo principal de AWS SAM están la facilidad de uso. Por diseño, se centra en simplificar el desarrollo de aplicaciones para que los programadores tengan más libertad para Crea en el ecosistema de código abierto.

Despliegue rápido y escalable

AWS SAM hace que el despliegue sea rápido y sencillo al permitir que los desarrolladores suban código a AWS y deje que Amazon gestione el resto. También proporcionan entornos de pruebas robustos, para que los desarrolladores no pierdan el ritmo. Todo esto ocurre en una plataforma que están fácil de escalar, permitiendo que las aplicaciones crezcan y cambien para cumplir con los objetivos del negocio.

Cómodo y accesible

Sin duda, AWS SAM ofrece una solución conveniente para desarrollar en la nube. Su naturaleza sin servidor también significa que están una plataforma universalmente accesible. El amplio alcance de internet facilita ejecutar código bajo demanda desde cualquier lugar.

Reducción del tiempo de salida al mercado

En general, elegir una plataforma de aplicaciones serverless ahorra tiempo y dinero que de otro modo se dedicaría a gestionar y operar servidores o entornos de ejecución, ya sea On-premises o en la nube. Como los desarrolladores pueden Crea aplicaciones en una fracción del tiempo (piensa en horas, no semanas o meses), sons capaces de centrar más su atención en acelerar la innovación en la competitiva economía digital actual.

Está claro que AWS SAM están una solución altamente eficiente, escalable, económica y conveniente para la programación en la nube.

Pero para quienes aún no han hecho el cambio, son algunas preocupaciones que surgen al desarrollar usando AWS SAM, incluyendo:

  • Una falta general de control sobre el ecosistema en el que son programan los desarrolladores.
  • Bloqueo de proveedores que puede ocurrir cuando tú te inscribes en cualquier FaaS.
  • Tiempos de espera en las sesiones que requieren que los desarrolladores reescriban el código, haciéndolo más complejo en lugar de simplificar el proceso.
  • Tiempos de espera AWS Lambda: Las funciones Lambda son limitadas por un valor de tiempo de espera que puede configurarse de 3 a 900 segundos (15 minutos). Lambda termina automáticamente las funciones que se ejecutan más tiempo que su valor de tiempo de espera.

Los dos primeros puntos son inconvenientes comunes de cualquier estrategia de externalización. Sin embargo, estas dos últimas preocupaciones podrían significar que te implemente algunas nuevas soluciones alternativas. En cualquier caso, no se pueden pasar por alto los muchos beneficios de programar en AWS SAM.

Para entender mejor el Modelo de Aplicaciones Serverless (SAM) de AWS, ayuda Ve ejemplos de cómo se está utilizado en el mundo real.

1. Pipeline de procesamiento de datos

Utiliza AWS SAM para automatizar la ingesta de datos, además de transformarlos y almacenarlos. Un pipeline típico utiliza AmazonS3, AWS Lambda, AWS Glue y Amazon Kinesis, Amazon DynamoDB o Amazon Redshift. Subir un archivo a un bucket en S3 activa una función Lambda para preprocesar datos. Luego va a Kinesis, para análisis en tiempo real, o a una base de datos como Amazon DynamoDB. AWS Glue puede extraer, transformar y cargar datos en aplicaciones. Este tipo de pipeline es escalable, tolerante a fallos y proporciona eficiencias en el procesamiento de grandes volúmenes de datos.

2. Aplicación web sin servidor

Eliminar la carga de gestionar la infraestructura con la aplicación web serverless. El enfoque puede utilizar un paquete de servicios, incluyendo Amazon API Gateway, AWS Lambda, Amazon S3, Amazon DynamoDB y autenticación segura por Amazon Cognito. Para un acceso global de baja latencia, despliega estos servicios a través de Amazon CloudFront. Las aplicaciones web serverless son ideales para aplicaciones web modernas porque escalan automáticamente para acomodar tráfico y ayudar a Reduce los costes operativos.

3. Microservicios orientados a eventos

Diseñar e integrar servicios que se comunican a través de eventos y actúan en tiempo real están un enfoque que utilizan las plataformas de comercio electrónico, las entidades que gestionan transacciones financieras y las organizaciones que necesitan análisis en tiempo real. Utiliza servicios como Amazon EventBridge, AWS Lambda, Amazon SQS y DynamoDB. Ocurre un evento, como un cliente realizando un pedido, que se está publicado en EventBridge para enrutar a Lambda. Ese servicio puede validar el pedido, procesar el pago y actualizar el inventario. Un servicio como Amazon SQS proporciona procesamiento asincrónico. DynamoDB almacena todos los datos de la transacción. Este enfoque ofrece escalabilidad, aísla fallos y permite desarrollar servicios de forma independiente.

Conoce más sobre Las 15 mejores prácticas para construir una arquitectura de microservicios.

Lecturas relacionadas

Estas publicaciones son mías y no representan necesariamente la posición, estrategias u opinión de BMC.

Más de ITOps y DevOps

Suscríbete al Informe

Al registrarse para esta oferta te son confirmar que te leído y aceptado la Política de Privacidad de BMC.

Gracias te

Tú te has suscrito a The Brief
El Brief abarca la orquestación de mainframe y empresa—BMC AMI y Control-M—y la investigación de analistas, despliegues de clientes y eventos en ambas áreas.