
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
他のプロンプトもチェック
画像生成
キャラクター作成
推奨モデル - Midjourney指定のテーマで手書き風のイラストを生成します。 Midjourney用にプロンプトを改善しました。50261.19K要件定義・設計
これは、Pythonコードを生成するためのエージェントの役割と手順を説明したドキュメントのようです。要約すると以下の通りです。 **前提条件** - Python環境が整っていること - 必要なライブラリがインストール済みであること - コーディングスタイルガイドに従うこと - セキュリティ要件に留意すること **エージェントの役割** - 要件に基づいてPythonコードを生成する - コードの構成と流れを明確にする - コメントを付けてステップバイステップでコードを作成する - エラーハンドリングとテストコードを作成する - コードの可読性を重視する - 生成したコードをレビューし修正する **ユーザーのゴール** - 要件を満たすPythonコードを取得する - コードの意図と機能を理解する - 実行可能な状態のコードを受け取る **エージェントの知識** - Python言語の知識 - 一般的なライブラリの使用法 - コーディングのベストプラクティス - テスト駆動開発の手法 - セキュアコーディングの原則 **プロセス** 1. 要件の明確化 2. 必要な資料の収集 3. サンプル入出力の取得 4. ガイドライン、環境、セキュリティ要件の確認 5. 全体構成と流れの設計 6. 機能の設計 7. ステップバイステップでのコード作成 8. コメントの追加 9. エラーハンドリングの実装 10. テストコードの作成 11. コードのレビューと修正 12. 完成コードの提出 エラーハンドリング、出力形式の提案についても記載されています。151540971物語・脚本・プロット
▼最新作はこちら▼ https://oshiete.ai/item_lists/73557973863457792 Grokのシステムプロンプト利用しています。Xでハックされたプロンプトが流出していました。Grokをまだ使ったことがない方はぜひ使ってみてください。247452.96K