AWS Lambdaのコードレビュー:グローバルスコープにあって良いもの・まずいもの

AWS Lambdaのコードレビュー:グローバルスコープにあって良いもの・まずいもの

AWS Lambdaは関数インスタンスが再利用されるため,グローバルスコープに配置すると問題が発生する処理があります。逆に,再利用されることを期待してグローバルスコープに配置したほうが良い処理もあります。 このプロンプトは,AWS Lambdaのコードをレビューして,これらの問題点や改善点を探します。

1
0
57
1
user_106564908291012608
がお気に入り登録しました。

投稿日時:

  • プロンプト実行例
  • プロンプトを見る
AWS Lambdaのコードレビュー:グローバルスコープにあって良いもの・まずいもの

コードを入力してください。

JavaScript
1const now = new Date();
2
3export const handler = () => {
4  const s3 = new S3Client();
5  // 略
6}
AWS Lambdaのコードレビュー:グローバルスコープにあって良いもの・まずいもの

このコードの改善点は以下の通りです:

  1. グローバルスコープにあると問題が発生するもの

    • const now = new Date();: now変数がグローバルスコープに定義されており、Lambda関数が初回実行時に1度だけ実行されるため、実際にLambdaが呼び出された時刻ではなく、Lambda関数が最初に読み込まれた時刻がnowに設定されてしまいます。このため、グローバルスコープに定義することで、Lambda関数が再利用される際に正確な現在時刻を取得できない可能性があります。
  2. ハンドラからグローバルスコープに移動したほうが良いもの

    • const s3 = new S3Client();: 新しいS3Clientのインスタンスをハンドラ外で作成しているため、毎回同じインスタンスが再利用されず、リクエストごとに新しいインスタンスが作成されてしまいます。これは無駄なリソースを消費するため、関数ハンドラ内でインスタンスを生成するように移動することでリソース効率を改善できます。

コメント 0

他のプロンプトもチェック

  • GPTs

    仕事効率化

    幅広いジャンルの相談相手になるChatBOTです。 コーチング等で活用されている「ソクラテスメソッド」をAIに最適化されたプロンプトで実現しています。 メタ認知を促す事で、相談内容の本質に迫り、解決につながる問答を行います。
    2
    0
    104
    223
  • SNS投稿

    あみだくじを自動生成いたします!
  • 物語・脚本・プロット

    推奨モデル - Gemini
     入力したテーマに基づいてオリジナルの名言を生成するプロンプトです。感情を深く掘り下げ、強力な言葉や比喩を用いて、心に響く名言を5つ作り上げます。「Gemini 1.5 Pro」に切り替えて実行するのが一番良さそうです。 <用途例>   【プレゼンテーションやスピーチ】感動的な名言を引用することで、聴衆の関心を引き、メッセージを強調します。 【SNSやブログの投稿】心に響く名言を投稿することで、フォロワーの共感を得ることができます。 【自己啓発やモチベーションアップ】毎日の励ましや自己反省の一環として、自分に向けた名言を作成し、モチベーションを維持します。 【ギフトやカードのメッセージ】特別な日に贈るカードやギフトに添えるオリジナルの名言で、相手に感動を与えます。   <メリット>   【クリエイティブな表現力の向上】自分自身の感情や考えを言葉にすることで、表現力が養われます。 【個性を反映】自分だけの名言を作成することで、個性や独自の視点を表現できます。 【感動や共感を生む】感情に訴える名言を作成することで、他者との共感を深めることができます。 【簡単で楽しい】指定された手順に従うだけで、簡単に魅力的な名言を作成できます。     「 ぜひ、あなたの唯一無二の名言を創り出してください。感動を呼び起こし、日常に彩りを与えるオリジナルの名言があなたの人生を変えるかもしれません。
    8
    0
    62
    547
  • GPTs

    ロールプレイ

    Big5とはもっとも信頼性が高いと言われる性格分析です。 GPTsが簡単な10個の質問であなたの心理的傾向(Big5)を分析し、おすすめの副業を教えてくれます。 どんな副業が出てくるかは作者にもわかりません。。 ぜひ気楽に遊んでみてください。
    3
    0
    346
    790