Uso de capas de Lambda - AWS Lambda

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Uso de capas de Lambda

Una capa de Lambda es un archivo .zip que contiene código o datos adicionales. Las capas suelen contener dependencias de biblioteca, un tiempo de ejecución personalizado o archivos de configuración.

Hay varias razones por las que podría considerar la posibilidad de usar las capas:

  • Para reducir el tamaño de sus paquetes de implementación. En lugar de incluir todas las dependencias de la función junto con el código de la función en el paquete de implementación, colóquelas en una capa. Esto mantiene los paquetes de implementación pequeños y organizados.

  • Para separar la lógica de las funciones principales de las dependencias. Con las capas, puede actualizar las dependencias de las funciones independientemente del código de la función y viceversa. Esto promueve la separación de preocupaciones y lo ayuda a concentrarse en la lógica de su función.

  • Para compartir dependencias entre varias funciones. Después de crear una capa, puede aplicarla a cualquier número de funciones de su cuenta. Sin capas, debe incluir las mismas dependencias en cada paquete de implementación individual.

  • Para usar el editor de código de la consola de Lambda. El editor de código es una herramienta útil para probar rápidamente actualizaciones de código de funciones menores. Sin embargo, no puede usar el editor si el tamaño del paquete de implementación es demasiado grande. El uso de capas reduce el tamaño del paquete y puede desbloquear el uso del editor de código.

El siguiente diagrama ilustra las diferencias arquitectónicas de alto nivel entre dos funciones que comparten dependencias. Una usa capas Lambda y la otra no.


      Diferencias arquitectónicas entre dos funciones de Lambda que no usan capas y dos funciones que comparten una capa.

Cuando incluye una capa en una función, Lambda extrae los contenidos de la capa en el directorio /opt en el entorno de ejecución de la función. Todos los tiempos de ejecución de Lambda compatibles de forma nativa incluyen rutas a directorios específicos dentro del directorio /opt. Esto permite que la función acceda al contenido de la capa. Para obtener más información sobre estas rutas específicas y sobre cómo empaquetar correctamente las capas, consulte Empaquetado del contenido de la capa.

Puede incluir hasta cinco capas por función. Además, puede utilizar capas solo con funciones de Lambda implementadas como archivos .zip. Para una función definida como una imagen de contenedor, empaquete su tiempo de ejecución preferido y todas las dependencias de código al crear la imagen de contenedor. Para obtener más información, consulte Cómo trabajar con capas y extensiones de Lambda en imágenes de contenedor en el blog de cómputo de AWS.

Cómo usar las capas

Para crear una capa, empaquete sus dependencias en un archivo .zip, de forma similar a como crear un paquete de implementación normal. Más específicamente, el proceso general de creación y uso de capas incluye estos tres pasos:

Capas y versiones de capas

Una versión de capa es una instantánea inmutable de una versión específica de una capa. Al crear una capa nueva, Lambda crea una nueva versión de capa con el número de versión 1. Cada vez que publique una actualización de la capa, Lambda incrementa el número de versión y crea una nueva versión de capa.

Cada versión de capa se identifica mediante un Nombre de recurso de Amazon (ARN) único. Al agregar una capa a la función, debe especificar la versión de capa exacta que desea utilizar.