一個在 VPC 中執行的 Lambda 函數透過 VPC endpoint 輪詢 SQS 佇列,然後計算來自訊息的數值滾動平均。初步測試顯示滾動平均不準確。開發人員要如何確保滾動平均的準確性?
選擇一個答案
點擊一個選項來檢查您的答案。
正確答案: 將函數的保留並行設定為 1。在函數中計算滾動平均,並將計算出的滾動平均儲存在 Amazon ElastiCache 中。.
為什麼這是答案
此解決方案確保滾動平均的準確性,因為將 Lambda 函數的保留並行設定為 1,可以保證一次只有一個函數實例在執行。這避免了多個實例同時更新滾動平均時可能發生的競爭條件,導致不準確的計算。將滾動平均儲存在 Amazon ElastiCache 中,可以讓函數實例在每次執行時存取和更新最新的平均值,確保狀態的持久性。 修改函數以將傳入值儲存在 Amazon ElastiCache 中,並在初始化時使用快取值來計算滾動平均:雖然使用 ElastiCache 儲存值是正確的,但如果沒有限制並行,仍然可能發生多個實例同時讀取和寫入,導致不準確。 將函數的佈建並行設定為 1:佈建並行確保在請求到達之前有指定數量的函數實例準備好,但它不限制同時執行的實例總數。如果請求量超過佈建並行,Lambda 仍然會啟動新的實例,導致競爭條件。 修改函數以將值儲存在函數的 layers 中:Lambda layers 用於共享程式碼和資料,但它們是不可變的,且在函數實例之間不共享狀態。因此,它們無法用於儲存和更新滾動平均。
通過考試 — 無需無休止地尋找答案
集中一處獲取此考試的所有核實題目和解釋,節省數小時的準備時間。1,000 多種認證 · 20 多種語言 · 免費開始。
更快通過您的考試 → 無需信用卡