Microsoft recommande, pour la plupart des cas d'utilisation, de créer un singleton de HttpClient, de le configurer et de le partager pour le cycle de vie de l'application, ou une requête Http dans certains cas.
Comment fonctionne le travail de Lambda à ce sujet ? Chaque fois que mon Lambda se déclenche (peu importe s'il est froid/chaud), est-ce le même processus qui s'exécute à chaque fois ou un nouveau processus dotnet ? S'il s'agit d'un nouveau processus dotnet à chaque fois, je peux simplement instancier et éliminer le HttpClient
toute sécurité, car il n'est utilisé qu'une seule fois tout au long du cycle de vie du Lambda. Si le même processus est réutilisé (avec le gestionnaire invoqué plusieurs fois), je dois alors gérer le cycle de vie de mon HttpClient
différemment.
Tout conseil sur la façon dont nous devrions traiter l'utilisation de HttpClient dans Lambda serait apprécié.
Voici mon discours de NDC Minnesota le mois dernier. Si vous passez à environ 2:40, je parcoure le cycle de vie d'un environnement Lambda qui, espérons-le, éclaircira les choses pour vous.
J'ai répondu à ma question, merci !
C'était tellement utile ! Bien que ce soit 2 ans trop tard, merci ! @normj
Merci @normj
Pour quiconque rencontre cette recherche de réponses - créez un singleton HttpClient, il devrait survivre à quelques invocations d'événements jusqu'à ce que vous ayez une longue période d'inactivité et que Lambda détruise l'environnement exécutant votre code.
Commentaire le plus utile
Voici mon discours de NDC Minnesota le mois dernier. Si vous passez à environ 2:40, je parcoure le cycle de vie d'un environnement Lambda qui, espérons-le, éclaircira les choses pour vous.
https://vimeo.com/271358846