
- AWS Lambda 教程
- AWS Lambda - 首頁
- AWS Lambda - 概述
- AWS Lambda - 環境設定
- AWS Lambda - 簡介
- 構建 Lambda 函式
- NODEJS 中的函式
- Java 中的函式
- Python 中的函式
- Go 中的函式
- C# 中的函式
- 配置 Lambda 函式
- 使用 AWS 控制檯建立和部署
- 使用 AWS CLI 建立和部署
- 使用 Serverless 框架建立和部署
- AWS 執行和呼叫 Lambda 函式
- 刪除 Lambda 函式
- 使用 Amazon API Gateway
- 帶有 Amazon S3 的 Lambda 函式
- 帶有 Amazon DynamoDB 的 Lambda 函式
- 帶有計劃事件的 Lambda 函式
- 帶有 Amazon SNS 的 Lambda 函式
- 帶有 CloudTrail 的 Lambda 函式
- 帶有 Amazon Kinesis 的 Lambda 函式
- 帶有自定義使用者應用程式的 Lambda 函式
- AWS Lambda@Edge 與 CloudFront
- 使用 Cloudwatch 進行監控和故障排除
- AWS Lambda - 其他示例
- AWS Lambda 有用資源
- AWS Lambda - 快速指南
- AWS Lambda - 有用資源
- AWS Lambda - 討論
AWS Lambda – 配置 Lambda 函式
在前面的章節中,我們學習瞭如何在 AWS 控制檯中建立 AWS Lambda 函式。但是,建立 Lambda 函式還有其他引數。這些包括記憶體分配、超時等。
在本章中,讓我們詳細瞭解 AWS Lambda 的以下配置屬性。
記憶體分配
登入 AWS 控制檯並建立或選擇現有的 lambda 函式。單擊“**配置**”選項卡以獲取分配的記憶體的詳細資訊。請檢視以下所示的螢幕截圖 -

請注意,預設情況下分配的記憶體為 **128MB**。如果要增加記憶體,可以單擊滑塊。
隨著您移動滑塊,記憶體將增加到 **64MB**。觀察可用的最大記憶體為 **3008MB**。請檢視以下所示的螢幕截圖 -

您也可以從命令提示符使用 **aws cli** 來增加記憶體限制。您需要以 64MB 的增量提供記憶體。
現在,讓我們增加名為:**myfirstlambdafunction** 的 AWS Lambda 的記憶體限制。
函式的記憶體詳細資訊顯示在下面給出的螢幕截圖中 -

使用 **aws cli** 更改記憶體的命令如下 -
aws lambda update-function-configuration --function-name your function name -- region region where your function resides --memory-size memory amount -- profile admin user
AWS Lambda 函式 **myfirstlambdafunction** 在 AWS 控制檯中的相應輸出顯示在此處。觀察記憶體已從 128MB 更改為 256MB。

最大執行時間
超時是分配給 AWS Lambda 函式的時間,如果超時發生則終止。AWS Lambda 函式將在分配的時間內執行,或者如果超過給定的超時時間則終止。您需要評估函式執行所需的時間,並相應地在 AWS 控制檯的“**配置**”選項卡中選擇時間,如下所示 -

IAM 角色
建立 AWS Lambda 函式時,需要分配角色或許可權。如果您需要 AWS Lambda 用於 S3 或 dynamoDB,則需要分配有關 lambda 服務的許可權。根據分配的角色,AWS Lambda 將決定要採取的步驟。例如,如果您授予 dynamodb 的完全訪問許可權,則可以新增、更新和刪除 dynamodb 表中的行。
處理程式名稱
這是 AWS Lambda 函式執行的開始。處理程式函式包含觸發事件的詳細資訊、上下文物件以及必須在 AWS Lambda **成功**或**錯誤**時傳送回的回撥。
nodejs 中的處理程式函式格式如下所示 -
exports.handler = (event, context, callback) => { callback(null, "hello from lambda"); };
使用環境變數的 Lambda 函式
在本節中,我們將使用在配置部分中新增的環境變數建立一個簡單的 Lambda 函式。為此,請按照以下步驟操作並參考相應的螢幕截圖 -
步驟 1
轉到 AWS 控制檯並在 Lambda 中建立一個函式,如圖所示。

步驟 2
現在,新增環境變數,如圖所示 -

步驟 3
現在,讓我們在 Lambda 程式碼中獲取相同的內容,如下所示 -
exports.handler = (event, context, callback) => { var hostName = process.env.host; var userName = process.env.username; callback(null, "Environment Variables =>"+hostName+" and "+userName); };
步驟 4
要從環境變數中獲取詳細資訊,我們需要使用 **process.env**,如圖所示。請注意,此語法適用於 **NodeJS** 執行時。
var hostName = process.env.host; var userName = process.env.username;
步驟 5
Lambda 函式執行的輸出將如下所示 -
