El almacenamiento de nodo del módulo en el depósito de S3 para AWS Lambda

0

Pregunta

He desarrollado un nodejs basado en la función/programa y desea que se ejecute en AWS Lambda. El problema es que el tamaño es mayor de 50 mb y AWS Lambda es compatible con direct código de la función a ser menores de 50 MB.

Principalmente en mi código en el nodo del módulo son de 43MB y el código real es de alrededor de 7MB. Así que es allí cualquier manera yo puedo separar de mi nodo del módulo de código, Puede ser que si podemos almacenar el nodo de módulos en el S3 y luego acceder a ella en AWS Lambda? Cualquier sugerencia sería útil. Gracias

P. S: Debido a algunos problemas de dependencias de los que no puedo ejecutar esta función como una ventana acoplable imagen en Lambda.

amazon-web-services aws-lambda node.js
2021-11-23 22:10:38
2
1

Si usted no desea o no puede usar la ventana acoplable de embalaje, que se puede comprimir hasta su node_modules en un S3.

Su handler (o el módulo que contiene el controlador), puede descargar el archivo zip y extraer los archivos /tmp. A continuación, require() los módulos a partir de ahí.

La anterior descripción no ser 100% exacto, ya que hay muchas formas de hacerlo. Pero esa es la idea general.

Este es un método de implementación que zappauna herramienta para la implementación de Python/Django aplicaciones de AWS Lambda, ha apoyado mucho antes de ventana acoplable contenedores estaban permitidos en Lambda.

https://github.com/Miserlou/Zappa/pull/548

2021-11-23 22:49:27
1

Usted puede utilizar lambda capas que es un ajuste perfecto para su caso de uso. Hace algún tiempo, necesitamos usar facebook sdk para uno de nuestro proyecto y hemos creado un lambda de la capa para el facebook sdk(32 mb) y, a continuación, el paquete de implementación se convirtió en sólo 4 KB.

Se afirma como

El uso de capas puede hacer que sea más rápido para implementar aplicaciones con la AWS Serverless Modelo de Solicitud (AWS SAM) o el Serverless marco. Moviendo dependencias en tiempo de ejecución de su código de función para una capa, esto puede ayudar a reduce the overall size of the archive subido durante una implementación.

Única función Lambda puede utilizar hasta five layers. El tamaño máximo del total descomprimido función y todas las capas es 250 MB que es mucho más allá de sus límites.

2021-11-24 17:39:02

En otros idiomas

Esta página está en otros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Slovenský
..................................................................................................................