Ukladanie uzol modul na S3 nádoba pre AWS Lambda

0

Otázka

Som vyvinuli nodejs založené funkcia/program a chcete spustiť ho na AWS Lambda. Problém je, že veľkosť je väčšia než 50 MB a AWS Lambda podporuje priamu funkciu kódu byť pod 50 MB.

Najmä na môj kód uzol modulu sú 43MB a samotný kód je asi 7MB. Takže je tam žiadny spôsob, ako môžem samostatné moje uzol modul z kódu, Môže byť, ak môžeme ukladať uzol moduly v S3 vedra a potom prístup na AWS Lambda? Akékoľvek návrhy budú užitočné. Vďaka

P. S: Kvôli nejakej závislosti otázky nemôžem spustiť túto funkciu ako Docker obraz na Lambda.

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

Ak nechcete alebo nemôžete použiť Docker balenie, môžete zips vaše node_modules do S3 vedre.

Vaše handler (alebo modul obsahuje váš handler), potom môže stiahnuť zip archív a extrahovať súbory do /tmp. Potom vás require() vaše moduly z tam.

Vyššie uvedený popis, aby nemusí byť presný na 100%, pretože existuje veľa spôsobov, ako robiť to. Ale to je základná myšlienka.

To je jeden nasadenie metóda, ktorá zappa, nástroj pre nasadenie Python/Django aplikácie na AWS Lambda, podporuje dlhé pred docker kontajnery boli povolené v Lambda.

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

2021-11-23 22:49:27
1

Môžete použiť lambda vrstvy , ktoré je perfektné pre váš prípad použitia. Pred nejakým časom, musíme použiť facebook sdk pre jedného z našich projektu a vytvorili sme lambda vrstva pre facebook sdk(32 mb) a potom nasadenia balíka stal iba 4 KB.

Je uvedený ako

Pomocou vrstiev môže robiť to rýchlejšie nasadzovanie aplikácií s AWS Serverless Aplikácie Modelu (AWS SAM) alebo Serverless rámec. Pohybom runtime závislosti od svojho funkčného kódu do vrstvy, čo môže pomôcť reduce the overall size of the archive odovzdané počas nasadenia.

Jeden Lambda funkciu môžete použiť až five layers. Maximálna veľkosť celkového rozbalené funkciu a všetky vrstvy je 250 MB čo je ďaleko nad svoje limity.

2021-11-24 17:39:02

V iných jazykoch

Táto stránka je v iných jazykoch

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