Le Multi-threadingmulti-threading

Une conséquence du mécanisme d’extension dont disposent les fonctions Lambda, et qu’on vient de voir précédemment est la garantie qu’au maximum un événement par instance de fonction sera traité à tout moment. En d’autres termes, on n’est jamais concerné par le cas où des événements multiples seraient traités par la même instance Lambda. Ainsi, le problème du multi-threading ne se pose pas, à moins que vous créiez et manipuliez vos propres threads.

Les applications et les services lancent des threads pour une des raisons suivantes :

  • Obtenir de l’extension (scaling) en autorisant le traitement de plusieurs requêtes à la fois, dans le cadre du même processus.

  • Effectuer des traitements parallèles à travers des CPU multiples.

  • Effectuer des opérations d’entrée-sortie non bloquantes.

Parmi les trois cas ci-dessus, le premier ne se pose jamais avec AWS Lambda. Car avec AWS Lambda, chaque requête est traitée dans un environnement d’exécution séparé, qu’on a appelé précédemment container.

Quant au deuxième, il est plutôt rare que dans un environnement cloud on rencontre des problèmes liés au nombre de CPU et leur utilisation en parallèle. En effet, le traitement parallèle est une caractéristique intrinsèque de l’extension...

Pour consulter la suite, découvrez le livre suivant :
couv-EIAWSL.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Limitation, simultanéité et quotas
Suivant
Versions, alias et déplacement de trafic