Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Lambda fournit des environnements d’exécution gérés pour Java, Python, Node.js, .NET et Ruby. Pour créer des fonctions Lambda dans un langage de programmation qui n’est pas disponible en tant qu’environnement d’exécution géré, utilisez un environnement d’exécution uniquement basé sur le système d’exploitation (famille des environnements d’exécution provided
). Il existe trois principaux cas d’utilisation pour les environnements d’exécution uniquement basés sur le système d’exploitation :
-
Compilation native ahead-of-time (AOT) : des langages tels que Go, Rust et C++ se compilent nativement en un binaire exécutable, ce qui ne nécessite pas d'exécution de langage dédié. Ces langages ont uniquement besoin d’un environnement de système d’exploitation dans lequel le binaire compilé peut s’exécuter. Vous pouvez également utiliser des environnements d’exécution uniquement basés sur le système d’exploitation Lambda pour déployer des fichiers binaires compilés avec .NET Native AOT et Java GraalVM Native.
Vous devez inclure un client d’interface d’exécution. Le client de l’interface d’exécution appelle l’Utilisation de l’API de l’environnement d’exécution Lambda pour des environnements d’exécution personnalisés pour récupérer les invocations de fonction, puis appelle votre gestionnaire de fonctions. Lambda fournit des clients d'interface d'exécution pour Go, .NET Native AOT, C++
(expérimental) et Rust (expérimental). Vous devez compiler votre binaire pour un environnement Linux et pour la même architecture de jeu d’instructions que celle que vous prévoyez d’utiliser pour la fonction (x86_64 ou arm64).
-
Runtimes tiers : vous pouvez exécuter des fonctions Lambda à off-the-shelf l'aide d'environnements d'exécution tels que
Bref pour PHP ou Swift Runtime pour AWS Lambda Swift . -
Exécutions personnalisées : vous pouvez créer votre propre environnement d’exécution pour une langue ou une version de langue pour laquelle Lambda ne fournit pas d’environnement d’exécution géré, comme Node.js 19. Pour de plus amples informations, veuillez consulter Création d'un environnement d'exécution personnalisé pour AWS Lambda. Il s’agit du cas d’utilisation le moins courant pour les environnements d’exécution uniquement basés sur le système d’exploitation.
Lambda prend en charge les environnements d’exécution uniquement basés sur le système d’exploitation suivants :
Nom | Identifiant | Système d’exploitation | Date d’obsolescence | Créer la fonction de blocage | Mettre à jour la fonction de blocage |
---|---|---|---|---|---|
Exécution réservée au système d’exploitation |
|
Amazon Linux 2023 |
30 juin 2029 |
31 juillet 2029 |
31 août 2029 |
Exécution réservée au système d’exploitation |
|
Amazon Linux 2 |
30 juin 2026 |
31 juillet 2026 |
31 août 2026 |
L’environnement d’exécution Amazon Linux 2023 (provided.al2023
) offre plusieurs avantages par rapport à Amazon Linux 2, notamment un encombrement de déploiement réduit et des versions mises à jour de bibliothèques telles que glibc
.
L’environnement d’exécution provided.al2023
utilise dnf
comme gestionnaire de packages au lieu de yum
, qui est le gestionnaire de packages par défaut dans Amazon Linux 2. Pour plus d'informations sur les différences entre provided.al2023
etprovided.al2
, consultez Présentation du runtime Amazon Linux 2023 AWS Lambda