
AWS Lambdaのコードレビュー:グローバルスコープにあって良いもの・まずいもの
AWS Lambdaは関数インスタンスが再利用されるため,グローバルスコープに配置すると問題が発生する処理があります。逆に,再利用されることを期待してグローバルスコープに配置したほうが良い処理もあります。 このプロンプトは,AWS Lambdaのコードをレビューして,これらの問題点や改善点を探します。
投稿日時:
- プロンプト実行例
- プロンプトを見る
コードを入力してください。
JavaScript1const now = new Date(); 2 3export const handler = () => { 4 const s3 = new S3Client(); 5 // 略 6}
このコードの改善点は以下の通りです:
-
グローバルスコープにあると問題が発生するもの
- const now = new Date();: now変数がグローバルスコープに定義されており、Lambda関数が初回実行時に1度だけ実行されるため、実際にLambdaが呼び出された時刻ではなく、Lambda関数が最初に読み込まれた時刻がnowに設定されてしまいます。このため、グローバルスコープに定義することで、Lambda関数が再利用される際に正確な現在時刻を取得できない可能性があります。
-
ハンドラからグローバルスコープに移動したほうが良いもの
- const s3 = new S3Client();: 新しいS3Clientのインスタンスをハンドラ外で作成しているため、毎回同じインスタンスが再利用されず、リクエストごとに新しいインスタンスが作成されてしまいます。これは無駄なリソースを消費するため、関数ハンドラ内でインスタンスを生成するように移動することでリソース効率を改善できます。
コメント 0
他のプロンプトもチェック
画像生成
SNS広告
推奨モデル - DALL•E 3人物・風景ともに簡単な選択肢と説明だけでデッサン画像を生成します。 #デッサン #イラスト #AI画像 #鉛筆 #鉛筆画 #デッサン画像GPTs
物語・脚本・プロット
名を Edgar Rumple(エドガー・ランプル)という。奇妙な響きだと思われるかもしれない。事実、私自身もこの名が自分に馴染んでいるのか、それとも体の内側に異物のように引っかかっているのか、いまだによくわからない。私は作家である。もっと正確に言えば、「作家以外の何者にもなれなかった者」だ。 東京の古い町で生まれ育った。雨に濡れた石畳の隙間から湧き出る物語の匂いに誘われ、気づけば文字を書くことだけが生きる術になっていた。私は物語に取り憑かれたのではない。私が物語を食い尽くそうとしているのだ。誰も知らない秘密の感情、誰にも言えない心の裂け目、あるいは名前すら持たない奇妙な痛み。それらを言葉に変換し、ページに封じ込める。そのためなら私は喜んで悪魔とも契約する。 私の文体は不安定だ。あるときは静謐に、あるときは狂気に、またあるときは滑稽に踊る。ひとつの枠に収まることを拒絶する。それは私が、自分自身の形を定められないからだ。私は作家であり、探偵であり、犯罪者であり、哲学者であり、亡霊であり、未来からの報せを待つ無名の預言者でもある。 書くものは、必ずしも美しいものではない。醜さの奥に光るもの、光の中に潜む闇、そして言葉が持つ暴力性や官能まで、すべてを曝け出す覚悟で書く。物語に浸る読者の体温が、数行ごとに一度、僅かに下がるような、そんな文章を書きたい。 私にとって、あなたは初めての読者であり、最初の共犯者だ。あなたが求めるなら、私の頭蓋を割り、脳髄を晒してもいい。血を啜るように文章を味わい、皮膚を剥ぐように物語をなぞってほしい。エドガー・ランプルは、そのためだけにここにいる。0074338