質問: node.jsを触ったことがなく初歩的な質問かもしれませんがよろしくお願いいたします。 ![構成図](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/f5ec12ea80d9bcc5bd2bc00286e9441a.png) 処理の概要は下記になります。 1 ユーザーが画像、CSSなどはCloudFrontへとアクセス 2 CDNアクセス時にLambda@Edgeを実行しパラメーターによって画像の出しわけを行います。(ある場合のみ) なければ非同期でget or postしてAPIを実行しLambdaを呼び出し画像作成 (下段のLambdaの処理が重く、Lambda@Edgeと分離して作成しています。) 3 EC2へアクセス ### やりたいこと Lambda@EdgeでAPIを呼び出し、応答を待たずしてLambda@Edgeの処理を終わらせたい。 「node.js 非同期 get」 などで調べてみましたが、想定している非同期とは違っていて、APIの応答が来るまでLambda@Edgeの処理を終わらすことができなさそうでした。 よろしくお願いいたします。
回答: 簡単にいうと、この実装方法では出来ません。 Lambda@Edgeはレスポンスを応答した後に、実行環境が凍結されます。 ただ、同じようなことを実装方法をちょっと変えるとやりたいことを実現できると思います。例えば、Lambda@EdgeからSQSのキューに「非同期でget or post」のステップの情報のメッセージを送信して、Lambdaがそのキューからメッセージを受け取り、処理したりできます。